In this work we advance the study of leakage-resilient Authenticated Encryption with Associated Data (AEAD) and lay the theoretical groundwork for building such schemes from sponges. Building on the work of Barwell et al. (ASIACRYPT 2017), we reduce the problem of constructing leakage-resilient AEAD schemes to that of building fixed-input-length function families that retain pseudorandomness and unpredictability in the presence of leakage. Notably, neither property is implied by the other in the leakage-resilient setting. We then show that such a function family can be combined with standard primitives, namely a pseudorandom generator and a collision-resistant hash, to yield a nonce-based AEAD scheme. In addition, our construction is quite efficient in that it requires only two calls to this leakage-resilient function per encryption or decryption call. This construction can be instantiated entirely from the T-sponge to yield a concrete AEAD scheme which we call Slae. We prove this sponge-based instantiation secure in the non-adaptive leakage setting. Slae bears many similarities and is indeed inspired by Isap, which was proposed by Dobraunig et al. at FSE 2017. However, while retaining most of the practical advantages of Isap, Slae additionally benefits from a formal security treatment.
A.1 Standard Cryptographic PrimitivesWe make use of the following definition of a pseudorandom generator. Note that our syntax defines a pseudorandom generator with variable output length, where the output length (in bits) is specified as part of the input. In addition, in our security definition we allow the adversary to make multiple queries to the challenge oracle G.Definition 6 (Pseudorandom Generators). Let G : S × N → {0, 1} * be a pseudorandom generator with an associated seed space S, and let the PRG game be as defined in Fig. 16. Then for any adversary A, its corresponding PRG advantage is given by:We define collision-resistant hash functions over a generic domain X . Letting X = {0, 1} * results in the usual syntax but we can also, for instance, model a vector hash function over a triple of strings by setting X = {0, 1} * × {0, 1} * × {0, 1} * . For simplicity we only consider the random transformation model.
Definition 7 (Collision-Resistant Hash Functions).Let H : X → {0, 1} w be a hash function constructed from a random transformation ρ, with domain X and output length w . Then for any adversary A with oracle access to ρ, its corresponding advantage is given by:Adv cr H (A) = 2 Pr[(X 0 , X 1 ) ← A ρ : H(X 0 ) = H(X 1 ) ∧ X 0 = X 1 ∧ X 0 , X 1 ∈ X ] .