[meta] Element Web's requirements for `crypto-js`
Hywan opened this issue · 1 comments
Hywan commented
Address element-hq/element-web#21972.
This is not a secret that Element Web will use matrix-sdk-crypto-js
in a near future. This meta issue provides a list of additional features we want to see in matrix-sdk-crypto-js
that are required for Element Web. This list is inspired by Element Web R: Internal Plan, and by various wishes I've heard here and there.
Each new feature respects the Rust team' standards: It is highly tested, well-documented, reviewed, and will improve the underlying layers if needed.
Foundational
Basic encryption/decryption
- Storage implementation
- Bindings for the minimal interface to support basic encryption/decryption
- Fix bugs from community testing session
Table-stakes Functionality
- Cross-signing bindings (Key Verification with Emojis, QR code, or manually, identity and bootstrapping)
- Cross-signing shields/verification status
-
OlmMachine.cross_signing_status
is implemented, not sure if it validates this item - #1039
-
- Key backup bindings
- Room key forwarding/key sharing
- Historical room key sharing
- Not implemented in
matrix_sdk_crypto
yet.
- Not implemented in
- Custom to-device message bindings (for MSC3401 VoIP)
- Bindings to reset/replace key backup & cross-signing (and/or SSSS)
- Not implemented in
matrix_sdk_crypto
yet.
- Not implemented in
- Fix bugs from community testing session
Ship It
- Test and address performance concerns if any
- Fix bugs from community testing session
Hywan commented
It's shipped, forgot to close this issue!