An end-to-end encrypted chat client using the Double Ratchet Algorithm. A session setup protocol that underwrties chat systems such as Signal and WhatsApp
All messages sent also include the session key encrypted with a fixed public key issued by a central entity (such as a govenment)