otrv4 / libotr-ng

A new implementation of OTR with support for version 4. This is a mirror of https://bugs.otr.im/otrv4/libotr-ng
Other
43 stars 9 forks source link

Include an out-of-order double ratchet #53

Closed claucece closed 6 years ago

claucece commented 6 years ago

Why

As we are currently implementing the revision number 2 of the OTRv4 specification, we need to include an out-of-order double ratchet.

Reference

Please, refer to "Interactive DAKE Overview" and "Non-Interactive DAKE Overview" for knowing how to initialize the Double Ratchet after the DAKE, on the OTRv4 specification.

Refer to "When you send a Data Message:" and "When you receive a Data Message:" for knowing how to handle data messages with the Double Ratchet, on the OTRv4 specification.

Related to #64, #68 and #82

Tasks

Open questions

Is the max_skip variable going to be taken from the client?

claucece commented 6 years ago

The max_skip will be taken from the client. We should add this to the plugin.

claucece commented 6 years ago

From the last OTR meeting:

Check: https://github.com/otrv4/libotr-ng/commit/1350b486b741e9a1f91df8ea5ab9f641d147ee7a#commitcomment-29380704