Documentation

Cryptlib.Primitives.MKEM.MKEM

Multi-recipient KEM #

The sender draws an ephemeral key pair, encrypts the payload once under a fresh message key, and encrypts the message key to each recipient under a NIKE shared key (a DEK). A recipient can reply under the same shared key, which the sender reads with the ephemeral private key. The generic construction is MKEMAdapter.mkemOfNike.

Correctness is stated for the ciphertext reduced to one recipient's DEK (forRecipient). Decapsulating the full ciphertext trial-decrypts the DEKs, which is correct only under AEAD authenticity, a computational property. IND-CCA2 and recipient anonymity are likewise not laws. The ciphertext byte encoding is not modelled.

Instances For

    The ephemeral public key, one DEK per recipient, and the sealed payload.

    Instances For
      def Cryptlib.Primitives.MKEM.MKEM.Ciphertext.forRecipient {PublicKey : Type} (ct : Ciphertext PublicKey) (i : Nat) :
      Ciphertext PublicKey

      The ciphertext with only DEK i.

      Equations
      Instances For
        Instances For