270 likes | 337 Views
This research explores Length-Doubling Ciphers and Tweakable Ciphers, presenting HEM and THEM systems which utilize blockcipher calls for enhanced security in confidentiality modes of operation. The study covers IND-CPA, IND-CCA, AE, deterministic encryption, PRP, SPRP security, and applications in various encryption scenarios. It delves into the utility of Length-Doubling Ciphers, efficient VIL ciphers, and secure tweakable ciphers. Theoretical frameworks and security analyses are provided, along with essential algorithms and constructions for robust encryption methods. Notably, the study investigates variants like Tweak Stealing and poses open questions for further cipher development.
E N D
Length-Doubling Ciphers and Tweakable Ciphers Haibin Zhang Computer Science Department University of California, Davis hbzhang@cs.ucdavis.edu http://csiflabs.cs.ucdavis.edu/~hbzhang/
Our Contribution • HEM: a VIL cipher on [n..2n-1] • THEM: a VIL tweakable cipher on [n..2n-1] • Both HEM and THEM usestwo blockcipher calls
Symmetric-Key Encryption(Confidentiality Modes of Operation) • Probabilistic/stateful encryption (length-expanding) • IND-CPA: CBC, CTR, … • (IND-CCA) • AE :IND-CPA+INT-CTXT: CCM, GCM, OCB, … • Deterministic encryption (length-preserving encryption; cipher) • PRP (CPA) security: • SPRP (CCA) security: CMC, EME2, … SPRP ciphers are useful in disk sector encryption, encipher and encode applications, hybrid encryption, … IEEE P1619.2 (EME2)
E: K{0,1}n {0,1}n Blockciphers p() EK() random permutation over {0,1}n A -1 -1 p() EK() PRP (CPA) security prp EK() Adv(A) = Pr[A 1] – Pr[A p 1] E + PRP (CCA) security - -1 + -1 prp - EK(), EK() Adv(A) = Pr[A 1] – Pr[Ap, p 1] E
ε : K XX General Ciphers A cipher for |X|=[n..2n-1] p() εK() random length-preserving permutation over X A εK () -1 p() -1 PRP (CPA) security εK() prp Adv(A) = Pr[A 1] – Pr[A p 1] ε + PRP (CCA) security - -1 -1 εK() ,εK() + prp - Adv(A) = Pr[A 1] – Pr[Ap, p 1] ε
~ [Liskov, Rivest, Wagner 2002] E: KT{0,1}n {0,1}n Tweakable Blockcipher Security p(, ) ~ EK(,) random permutation over Perm(T, n) A EK(,) -1 ~ p(, ) -1 PRP security ~ prp EK() Adv(A) = Pr[A 1] – Pr[Ap 1] ~ Ε + PRP security - ~ ~ -1 + -1 prp - EK(), EK() Adv(A) = Pr[A 1] – Pr[A p , p 1] ~ E
~ [Liskov, Rivest, Wagner 2002] E: KTXX Tweakable Cipher Security p(, ) ~ EK(,) random permutation over Perm(T, X) A A tweakable cipher for |X|=[n..2n-1] EK(,) -1 ~ p(, ) -1 PRP security ~ prp EK() Adv(A) = Pr[A 1] – Pr[Ap 1] ~ Ε + PRP security - ~ ~ -1 + -1 prp - EK(), EK() Adv(A) = Pr[A 1] – Pr[A p , p 1] ~ E
How is Length-Doubling Cipher ([n..2n-1]) USEFUL? • A historicallyand theoretically interesting problem [Luby and Rackoff, 1988] A FIL cipher from n to 2n “Doubling” the length of a cipher Our Goal: A VIL cipher from n to [n..2n-1] “Doubling” the length of a cipher in the VIL sense
How is Length-Doubling Cipher ([n..2n-1]) USEFUL? [Rogaway and Zhang, 2011] TC3* Online Cipher A tweakable cipher of length [n..2n-1]
How is Length-Doubling Cipher ([n..2n-1]) USEFUL? [IEEE, P1619] XTS Mode Ciphertext Stealing did not seem to do a good job. A tweakable cipher of length [n..2n-1]
Previous constructions for [n..2n-1] EME2 [Halevi, 2004] Four-round Feistel XLS[Ristenpart,Rogaway,2007]
Two-blockcipher-call solution? Our algorithms • Two blockcipher calls Two AXU hash calls One mixing function call (inexpensive; non-cryptographic tool)
H: KXY [Krawczyk, 1994] AXU Hash Function • Almost XOR Universal hash functions: • For our constructions, X = Y = {0,1}n H: KXYH: K{0,1}n{0,1}n Essential for efficiency and security For all X¹X ’and all CY, Pr[Hk(x) ÅHk(X ’) = C] ≤ ε HK(x) =KX Galois Field Multiplication
[Rogaway and Ristenpart, 2007] Mixing Function • Mixing Function: mix: SSS S Let mixL(,) and mixR(,) be the left and right projection of mix respectively. For any A S, mixL(A,), mixL(,A), mixR(A,), and mixR(,A) are all permutations. A construction by Ristenpart and Rogaway takes three xorsand a single one-bit circular rotation.
An inefficient 2-blockcipher-call solution Variationally universal hash [Rogaway and Krovetz, 2006] Variationally universal hash
Feistel networks [Luby and Rackoff, 1988] [Naor and Reingold, 1997] [Patel, Ramzan and Sundaram,1997] A FIL cipher of length 2n An improved FIL cipher of length 2n A FIL cipher of length ≥2n
FHEM: A FIL Cipher of length n+s AXU Hash Blockcipher Encryption 1.permutation 2. SPRP MIX function Blockcipher Encryption AXU Hash
FHEM of length n+s security Theorem: Let e = FHEM[H, Perm(n),mix]. If A asks at most q queries then + prp - Adv(A) 3 q2/2n e
FHEM is not VIL secure 0n 0 0n 00 If D1=C1output 1 else 0
FHEM is not VIL secure 0n 0 0n 00 If D1=C1output 1 else 0
HEM: A Length-Doubling Cipher FHEM HEM Can be Precomputed !
HEM security Theorem: Let e = HEM[H, Perm(n),mix]. If A asks at most q queries then + prp - Adv(A) 3 q2/2n e
THEM: A Length-DoublingTweakable Cipher A way of adding tweaks
THEM security ~ Theorem: Let e = THEM[H, Perm(n),mix]. If A asks at most q queries then + prp - Adv(A) 3 q2/2n ~ e
Open questions • A more elegant cipher on X= {0,1}[n..2n) • How do we achieve an efficient VIL cipher with the domain {0,1}>n using the least blockcipher calls? • (Informally) Does there exist a lower bound for the number of blockcipher calls for an efficient SPRP secure cipher with the domain{0,1}>n ?