Megolm.js is an implementation of the megolm cryptographic ratchet in JavaScript.
Megolm is the current cryptographic ratchet used by libolm for group chat sessions.
Its security features and limitations can be found here.
This library exists because we wanted to use a ratchet with the same properties as megolm, but libolm currently ties its use to group chat messages. There are other use cases, however.
This implementation is a port of the C implementation without too many bells and whistles in order to make checking its correctness easier.
See API.md.
The import
and export
methods are extensions to the original implementation,
inspired by libolm's session sharing.
The Matrix team, for writing libolm and megolm in the first place.