Page MenuHomePhabricator

Implement notification encryption on web
ClosedPublic

Authored by marcin on Jul 4 2024, 9:27 AM.
Tags
None
Referenced Files
F3002969: D12671.id43074.diff
Fri, Oct 18, 9:28 AM
F3002965: D12671.id42714.diff
Fri, Oct 18, 9:27 AM
F3002921: D12671.id42291.diff
Fri, Oct 18, 9:20 AM
F3002352: D12671.id42937.diff
Fri, Oct 18, 7:36 AM
Unknown Object (File)
Mon, Oct 14, 8:23 PM
Unknown Object (File)
Mon, Oct 14, 8:23 PM
Unknown Object (File)
Mon, Oct 14, 8:22 PM
Unknown Object (File)
Mon, Oct 14, 8:22 PM
Subscribers

Details

Summary

This differential implements notification encryption with olm session on web.

Test Plan

Tested in D12673

Diff Detail

Repository
rCOMM Comm
Branch
marcin/eng-8237
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

marcin requested review of this revision.Jul 4 2024, 9:44 AM
tomek added inline comments.
web/push-notif/notif-crypto-utils.js
318

Why are we using the content key instead of notif?

This revision is now accepted and ready to land.Jul 10 2024, 4:49 AM
web/push-notif/notif-crypto-utils.js
318

We are using key for notif session here. Content in this variable refers to "the content of notif olm session"

web/push-notif/notif-crypto-utils.js
318

Can you rename? This seems like very confusing naming

Rename ...DataContent... -> ...Data... to remove confusion around Conent keyword when dealing with notifs sessions

Make encryptNotification a part of olmAPI. This change is ESSENTIAL on web since it makes encryptNotification run on shared worker. This enables us to deterministically handle race conditions.