matrix-org / matrix-org/matrix-js-sdk
pipeline sending of decryption keys and encrypting the decryption keys
- Dominant language
- TypeScript
- Stars
- 2.2k
- Forks
- 704
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 40
Description
Right now, `src/crypto/algorithms/megolm.js:_shareKeyWithDevices` splits devices into batches, and waits until one batch is completely finished before starting on the next batch. Processing each batch consists of encrypting the key for each device, and then sending the keys. We could save some time by starting the encryption for the next batch while the current batch is being sent.
Contributor guide
Research direction
Start in src/crypto/algorithms/megolm.js at _shareKeyWithDevices and trace how batch encryption and key sending are sequenced. The work is done when encryption for the next device batch can begin while the current batch is being sent, without changing the batching or key-delivery behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- cryptography, performance
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 50/100