supabase_chat_e2ee 0.1.0 copy "supabase_chat_e2ee: ^0.1.0" to clipboard
supabase_chat_e2ee: ^0.1.0 copied to clipboard

Opt-in end-to-end encryption for supabase_chat using the Signal Protocol (libsignal_protocol_dart): prekey distribution over Supabase and an encrypted room decorator. The server only ever sees ciphertext.

0.1.0 #

  • Initial release.
  • Opt-in end-to-end encryption for supabase_chat via the Signal Protocol (libsignal_protocol_dart): the server only ever stores ciphertext.
  • E2eeIdentity (generate/restore, BYO-persistable Signal store) and E2eeManager (sessions, per-recipient encrypt, decrypt).
  • DeviceKeyBundle + PreKeyDirectory (SupabasePreKeyDirectory / InMemoryPreKeyDirectory) for X3DH prekey distribution over Supabase, with atomic server-side one-time-prekey consumption.
  • EncryptedChatRoom decorator: verify-first encrypt-on-send / decrypt-on-receive for 1:1 rooms.
  • Safety numbers + strict requireVerified mode (MITM protection) and IdentityChangedException (key-change rejection).
  • SQL migration for device_keys / one_time_prekeys (+ claim_one_time_prekey RPC) and messages.encrypted.
  • Licensed GPL-3.0 (this package links the GPL libsignal_protocol_dart), so the pub.dev license matches the obligation you take on. Closed-source apps should use supabase_chat_seal (MIT) instead.
  • Ships an EncryptedChatView Flutter recipe in the README (pairs the MIT supabase_chat_widgets widgets with this package in your app).
0
likes
150
points
92
downloads

Documentation

API reference

Publisher

verified publisherandroidpoet.dev

Weekly Downloads

Opt-in end-to-end encryption for supabase_chat using the Signal Protocol (libsignal_protocol_dart): prekey distribution over Supabase and an encrypted room decorator. The server only ever sees ciphertext.

Repository (GitHub)
View/report issues

License

GPL-3.0 (license)

Dependencies

libsignal_protocol_dart, meta, supabase, supabase_chat, supabase_realtime_kit

More

Packages that depend on supabase_chat_e2ee