Module type Kobeissi_bhargavan_blanchet_intf.PROTOCOL

The KBB2017 protocol

type t

The type that will be used to represent contiguous bytes in the protocol; typically Bytes.t or Cstruct.t

type t_aes_decrypted

An internal type representing a decrypted AES message

module TOPLEVEL : sig ... end

Entry point for sending and receiving messages while maintaining a KBB2017 session.

module Type_key : sig ... end

A private or public key

module Type_iv : sig ... end

An initialization vector

module Type_msg : sig ... end

A message

module Type_keypair : sig ... end

A public and private keypair

module Type_them : sig ... end

A session tracking the other party in a conversation

module Type_sendoutput : sig ... end

The updates to your record of the other party that should be persisted after sending a message

module Type_recvoutput : sig ... end

The updates to your record of the other party that should be persisted after receiving a message

module UTIL : sig ... end

Cryptographic helpers used in KBB2017

module RATCHET : sig ... end

Double Ratchet algorithm

module HANDLE : sig ... end

KBB2017 session update logic