-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug-for bug compatibility with libolm's PkEncryption support #171
Conversation
6f97915
to
c231c72
Compare
Trying to get our codecov thing going. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #171 +/- ##
=======================================
Coverage 90.35% 90.35%
=======================================
Files 34 34
Lines 1907 1907
=======================================
Hits 1723 1723
Misses 184 184 ☔ View full report in Codecov by Sentry. |
d50e302
to
0057971
Compare
0057971
to
a6a0ed1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall, though I reworded a bunch of stuff as usual. Clicking approved so it doesn't require another roundtrip.
d10d1f4
to
805e657
Compare
This patch introduces support for the libolm PkEncryption/PkDecryption concepts, ensuring bug-for-bug compatibility with libolm. Notably, the libolm implementation has a known flaw that leaves ciphertext unauthenticated, as documented in the Matrix spec [1]. To address this, the feature is gated behind a feature flag to better inform users of this issue. [1]: https://spec.matrix.org/v1.11/client-server-api/#backup-algorithm-mmegolm_backupv1curve25519-aes-sha2 Changelog: Add support for the libolm PkEncryption feature. This allows Matrix clients to implement the [m.megolm_backup.v1.curve25519-aes-sha2](https://spec.matrix.org/v1.11/client-server-api/#backup-algorithm-mmegolm_backupv1curve25519-aes-sha2) room key backup algorithm. Please note that this algorithm contains a critical flaw and should only be used for compatibility reasons.
805e657
to
484317b
Compare
A review commit-by-commit is advised, there are a couple of unrelated commits here to make the CI happy.
The meat of the PR is the libolm's PKEncryption support, for more info please take a look at the commit message which adds this functionality. Please note that the commit message assumes that we're going to merge #165.