diff options
Diffstat (limited to 'include/olm/ratchet.hh')
-rw-r--r-- | include/olm/ratchet.hh | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/olm/ratchet.hh b/include/olm/ratchet.hh index 2393e5b..071e349 100644 --- a/include/olm/ratchet.hh +++ b/include/olm/ratchet.hh @@ -29,7 +29,6 @@ struct ChainKey { SharedKey key; }; - struct MessageKey { std::uint32_t index; SharedKey key; @@ -82,8 +81,18 @@ struct Ratchet { /** The last error that happened encrypting or decrypting a message. */ ErrorCode last_error; + /** + * A count of the number of times the root key has been advanced; this is + * maintained purely for diagnostics. + * + * If sender_chain is empty, this will be the index of the current receiver + * chain (odd for Alice, even for Bob); otherwise, the index of the current + * sender chain (even for Alice, odd for Bob). + */ + std::uint32_t chain_index; + /** The root key is used to generate chain keys from the ephemeral keys. - * A new root_key derived each time a chain key is derived. */ + * A new root_key derived each time a new chain is started. */ SharedKey root_key; /** The sender chain is used to send messages. Each time a new ephemeral |