xmtp / libxmtp

MIT License
33 stars 13 forks source link

Support for is_sender verification for push notifications via HMAC #422

Open neekolas opened 5 months ago

neekolas commented 5 months ago

Emulate the HMAC support currently for V2 Conversations for Groups.

### Tasks
- [ ] Add support to LibXMTP
- [ ] Add support to Android
- [ ] Add support to iOS
- [ ] Add support to RN
- [ ] Add support to the ExampleNotification server
nplasterer commented 2 months ago

We had a great conversation today about how this could be implemented and decided with a solution to derive a key from the user using private preferences. This will all take place in the SDK level and shouldn't include libxmtp changes.

The main take away is that this will not be a breaking change and this can be moved to a nice to have for group chat.

Tasks

richardhuaaa commented 1 month ago

More info about private preferences in V2, used to store consent state (whether a given conversation should be hidden or shown, e.g. if it is spam that we don't want): https://community.xmtp.org/t/xip-42-universal-allow-and-block-preferences/544

Private preferences are simply a way of synchronizing state for a user, regardless of how many apps/installations they log onto.

Protos: https://github.com/xmtp/proto/blob/680f80288dd62824018342342ecb40b0fae49f8d/proto/message_contents/private_preferences.proto#L16