Explore / Study / Computer Science / Cryptography 789 words | 4 minutes

§11 Authenticated Encryption

  1. Authenticated Encryption: Definition
  2. The Unforgeable Encryption Experiment Enc-Forge⁡A,Π(n)\operatorname{Enc-Forge}_{\mathscr{A}, \Pi}(n)Enc-ForgeA,Π​(n)
  3. Encrypt-then-Authenticate construction
  4. Encrypt-then-Authenticate construction: Security

Authenticated Encryption: Definition

  • Definition. Let (GenE,Enc,Dec)(Gen_E, Enc, Dec) be an encryption scheme and let (GenM,Mac,Vrfy)(Gen_M, Mac, Vrfy) be a message authentication code. A combination is a tuple of algorithms (Gen,EncMac,Dec,Vrfy)(Gen' , EncMac' , Dec', Vrfy' )

    1. Key Generation GenGen': Given input 1n1^n, outputs kE,kM{0,1}nk_E, k_M \in \{0,1\}^n.
    2. EncMacEncMac': Given (kE,kM)(k_E, k_M) and a message mm, outputs a value cc derived by some combination of EnckE()Enc_{k_E}( \cdot ) and MackM()Mac_{k_M}( \cdot ).
    3. VrfyVrfy': Given input (kE,kM)(k_E, k_M) and cc, outputs 11 or 00.
    4. DecDec': Given input (kE,kM)(k_E, k_M) and cc, outputs some value mm.
  • Definition. A private-key encryption scheme Π\Pi is Unforgeable if for all probabilistic polynomial-time adversaries 𝒜𝒜, there is a negligible function ϵ\epsilon such that:

    Pr[Enc-ForgeA,Π(n)=1]ϵ(n)\Pr\left[\operatorname{Enc-Forge}_{\mathscr{A}, \Pi}(n)=1\right]\le\epsilon(n)

  • Definition. A private-key encryption scheme Π=(Gen,EncMac,Dec,Vrfy)\Pi = (Gen' , EncMac' , Dec' , Vrfy' ) is an Authenticated Encryption Scheme if it is CCA-secure and Unforgeable.

The Unforgeable Encryption Experiment Enc-ForgeA,Π(n)\operatorname{Enc-Forge}_{\mathscr{A}, \Pi}(n)

  • We define, for a private-key encryption scheme Π=(Gen,Enc,Dec)\Pi = (Gen, Enc, Dec), an adversary A\mathscr A, and security parameter nn, the unforgeable encryption experiment Enc-ForgeA,Π(n)\text {Enc-Forge}_{\mathscr{A}, \Pi}(n) as follows:
    1. Run Gen(1n)Gen(1^n) to obtain a key kk.
    2. The adversary A\mathscr A is given input 1n1^n and access to an encryption oracle Enck()Enc_k ( \cdot ). The adversary outputs a ciphertext cc.
    3. Let m:=Deck(c)m := Dec_k(c), and let Q\mathscr Q denote the set of all queries that A\mathscr A askes the encryption oracle. The adversary succeeds and the output of the experiment is 11 if and only if
      1. mm \ne \perp, and
      2. mQm \notin \mathscr Q.

Encrypt-then-Authenticate construction

  • Let ΠE=(Enc,Dec)\Pi_E = (Enc, Dec) be a private-key encryption scheme and let ΠM=(Mac,Vrfy)\Pi_M = (Mac, Vrfy) be a Message Authentication Code, where in each case key generation is done by choosing a uniform nn-bit key. Define a private-key encryption scheme (Gen,Enc,Dec)(Gen' , Enc' , Dec') as follows:
    • GenGen': Given input 1n1^n, choose independent, uniform kE,kM{0,1}nk_E, k_M \in \{0,1\}^n and output the key (kE,kM)(k_E, k_M).
    • EncEnc': Given inputs a key (kE,kM)(k_E, k_M) and a plaintext message mm, compute cEnckE(m)c \leftarrow Enc_{k_E}(m) and tEnckM(c)t \leftarrow Enc_{k_M}(c). Output the ciphertext c,t\langle c, t \rangle.
    • DecDec': Given inputs a key (kE,kM)(k_E, k_M) and a ciphertext c,t\langle c, t \rangle, first check whether VrfykM(c,t)=?1Vrfy_{k_M}(c, t) \stackrel{?}{=} 1. If yes, then output DeckE(c)Dec_{k_E}(c); if no, output \perp.

Encrypt-then-Authenticate construction: Security

  • Theorem. Let ΠE\Pi_E be a CPA-secure private-key encryption scheme and let ΠM\Pi_M be a strongly secure message authentication code. Then the Encrypt-then-Authenticate construction is an authenticated encryption scheme.
    • In a Strong MAC, the attacker cannot forge a new valid tag even on a message that he previously queried to the Mac oracle.
    • We define the Mac-sforge experiment, in which the set Q\mathscr Q of queries to the Mac oracle consists of pairs (m,t)(m, t), i.e., (m,t)Q(m, t) \in \mathscr{Q} if A\mathscr A queried Mack(m)Mac_k(m) and received in response the tag tt. The Mac-sforge experiment succeeds if A\mathscr A outputs (m,t)(m, t) such that Vrfyk(m,t)=1Vrfy_k(m, t) = 1 and (m,t)Q(m, t) \notin \mathscr{Q}.

— Mar 3, 2023

Creative Commons License
§11 Authenticated Encryption by Lu Meng is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Permissions beyond the scope of this license may be available at About.