Skip to content
This repository was archived by the owner on Dec 27, 2022. It is now read-only.
This repository was archived by the owner on Dec 27, 2022. It is now read-only.

Selective sharing and user blocking? #45

@Michael-S

Description

@Michael-S

I realize I may be asking for the sun, moon, and stars here, but it would spectacular if Fritter had the option of selectively sharing content and blocking users. Right now, of course, Fritter has the model that I don't have to follow others but anyone that follows anyone else following me can also find and follow me.

My idea for this is almost certainly either fundamentally flawed or else already under consideration. But I figure I'll share it anyway. Selective sharing and user blocking:

  1. 'Public' Fritter sharing works as it does today.
  2. Fritter accounts generate a short-lived symmetric key for decrypting their selectively shared content.
  3. Fritter accounts publish one message per each permitted follower with that symmetric key encrypted using the follower's public key. Other followers read something in the key-distribution message to indicate it's not meant for them and ignore it. OR the account publishes one giant message that is some kind of delimited string of follower public keys and follower public key encrypted symmetric keys.
  4. Then the account publishes the actual content, and the followers use the symmetric key to decrypt. Anyone can download and anyone can even help distribute the person's content using dat, but without the symmetric key the data is useless.
  5. When a new follower is added, the Fritter account just distributes their symmetric key to new followers. When a follower is removed, the Fritter account generates and distributes a new symmetric key that will be used for all subsequent posts.
  6. When the Fritter account wants to share a message with only a few followers, a new symmetric key is generated and shared with those recipients. Then when the user returns to sharing with their entire set of followers, a new symmetric key is generated and shared again. If you follow someone that publishes a message but has not distributed the new symmetric key to you, your Fritter client ignores the message and you never see it in your "feed".

Thoughts? I mean the ugly side is that a busy account with lots of activity would be generating thousands of tiny messages for key exchanges just to post "OMG the dog just stole a slice of pizza off the table!" But despite the high volume of symmetric key exchange messages the key exchange message size would be tiny.

I ask for this because I think a p2p social network is wonderful, but me and most of the people I know want a p2p Facebook/Instagram, not a p2p Twitter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions