Skip to content

Add interoperability with DR and X3DH based on Signal specs#124

Open
dkasak wants to merge 4 commits into
mainfrom
interolm
Open

Add interoperability with DR and X3DH based on Signal specs#124
dkasak wants to merge 4 commits into
mainfrom
interolm

Conversation

@dkasak

@dkasak dkasak commented Feb 4, 2024

Copy link
Copy Markdown
Member

This implements the delta between Olm and the Signal DR and X3DH specs[1][2] as a new mode (dubbed "Interolm"), intended to enable interoperability with libsignal and similar implementations.

[1]: https://signal.org/docs/specifications/x3dh/
[2]: https://signal.org/docs/specifications/doubleratchet/

@dkasak dkasak force-pushed the interolm branch 2 times, most recently from 5e6570e to 8d7eafd Compare February 4, 2024 01:07
@dkasak

dkasak commented Feb 4, 2024

Copy link
Copy Markdown
Member Author

Caveats

  • Broken libolm pickling.
    This currently breaks libolm session unpickling, because the legacy libolm pickle format doesn't contain some information added by the Interolm mode. This means we have one failing test.
  • Missing a bunch of tests.
  • Missing fuzzing.

Comment thread src/olm/messages/message.rs Outdated
Comment thread src/olm/messages/message.rs Outdated
There is still a bit of a mix between the terms left in Megolm, but
those should be cleaned up in a separate PR.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants