Indifferentiability of Confusion- Diffusion Networks
Yevgeniy Dodis (NYU), Martijn Stam (Bristol), John Steinberger (Tsinghua), Tianren Liu (MIT)
Wednesday, May 11, 16
Indifferentiability of Confusion- Diffusion Networks Yevgeniy Dodis - - PowerPoint PPT Presentation
Indifferentiability of Confusion- Diffusion Networks Yevgeniy Dodis (NYU), Martijn Stam (Bristol), John Steinberger (Tsinghua), Tianren Liu (MIT) Wednesday, May 11, 16 Indifferentiability of Confusion- Diffusion Networks Yevgeniy Dodis (NYU),
Yevgeniy Dodis (NYU), Martijn Stam (Bristol), John Steinberger (Tsinghua), Tianren Liu (MIT)
Wednesday, May 11, 16
Yevgeniy Dodis (NYU), Martijn Stam (Bristol), John Steinberger (Tsinghua), Liu Tianren (MIT)
Wednesday, May 11, 16
k0 S S S S k1 π S S S S k2 π S S S S k3 π S S S S k4 π
Wednesday, May 11, 16
k0 S S S S k1 π S S S S k2 π S S S S k3 π S S S S k4 π
S-boxes
(small input size) (permutations!)
Wednesday, May 11, 16
k0 S S S S k1 π S S S S k2 π S S S S k3 π S S S S k4 π
S-boxes
(small input size) (permutations!)
“Diffusion” Permutations
(big input size, simple structure)
Wednesday, May 11, 16
k0 S S S S k1 π S S S S k2 π S S S S k3 π S S S S k4 π
S-boxes
(small input size) (permutations!)
“Diffusion” Permutations
(big input size, simple structure)
Subkeys!
Wednesday, May 11, 16
S S S S S S S S S S S S S S S S S S S S π π π π
Wednesday, May 11, 16
S S S S S S S S S S S S S S S S S S S S π π π π
Wednesday, May 11, 16
S S S S S S S S S S S S S S S S S S S S π π π π
(from S-box to “full” permutation)
Wednesday, May 11, 16
S S S S S S S S S S S S S S S S S S S S π π π π
(from S-box to “full” permutation)
seems to be Feistel’s (1970)
Wednesday, May 11, 16
(confusion-diffusion!) networks as a design paradigm for cryptographic permutations
extension of a public random permutation
random permutations, D-boxes are fixed, explicit permutations)
permutation? How many rounds are necessary, and what kinds of D-boxes do we need??
Wednesday, May 11, 16
(confusion-diffusion!) networks as a design paradigm for cryptographic permutations
extension of a public random permutation
random permutations, D-boxes are fixed, explicit permutations)
permutation? How many rounds are necessary, and what kinds of D-boxes do we need??
Wednesday, May 11, 16
(confusion-diffusion!) networks as a design paradigm for cryptographic permutations
extension of a public random permutation
random permutations, D-boxes are fixed, explicit permutations)
permutation? How many rounds are necessary, and what kinds of D-boxes do we need??
Wednesday, May 11, 16
(confusion-diffusion!) networks as a design paradigm for cryptographic permutations
extension of a public random permutation
random permutations, D-boxes are fixed, explicit permutations)
permutation? How many rounds are necessary, and what kinds of D-boxes do we need??
Wednesday, May 11, 16
Wednesday, May 11, 16
Wednesday, May 11, 16
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 S4,1 S4,2 S4,3 π1 π2 π3
Wednesday, May 11, 16
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 S4,1 S4,2 S4,3 π1 π2 π3
n n n
Wednesday, May 11, 16
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 S4,1 S4,2 S4,3 π1 π2 π3
n
w = 3
n n
Wednesday, May 11, 16
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 S4,1 S4,2 S4,3 π1 π2 π3
n
w = 3
n n
r = 4
Wednesday, May 11, 16
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 S4,1 S4,2 S4,3 π1 π2 π3
n
w = 3
n n
r = 4
Wednesday, May 11, 16
(indifferentiability)
Wednesday, May 11, 16
(indifferentiability) REAL WORLD IDEAL WORLD
Wednesday, May 11, 16
(indifferentiability) REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2
Wednesday, May 11, 16
(indifferentiability) REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Wednesday, May 11, 16
(indifferentiability) REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Wednesday, May 11, 16
(indifferentiability) REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Insert Simulator Here
Wednesday, May 11, 16
S S S S S S S S S
(indifferentiability) REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Insert Simulator Here
Wednesday, May 11, 16
Goal: By using oracle access to the simulator has to make up answers that look “consistent” with Q
S S S S S S S S S
REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Insert Simulator Here
(indifferentiability)
Wednesday, May 11, 16
Goal: By using oracle access to the simulator has to make up answers that look “consistent” with Q
S S S S S S S S S
REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Insert Simulator Here
(indifferentiability) “For so-and-so many rounds, for such-and-such diffusion permutations, and with such-and-such a simulator, the distinguisher cannot distinguish using so-and-so-many queries.”
Wednesday, May 11, 16
Goal: By using oracle access to the simulator has to make up answers that look “consistent” with Q
S S S S S S S S S
REAL WORLD IDEAL WORLD
S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3 π1 π2 S1,1 S1,2 S1,3 S2,1 S2,2 S2,3 S3,1 S3,2 S3,3
Insert Simulator Here
(indifferentiability) “For so-and-so many rounds, for such-and-such diffusion permutations, and with such-and-such a simulator, the distinguisher cannot distinguish using so-and-so-many queries.”
Wednesday, May 11, 16
Wednesday, May 11, 16
π
?
2
Wednesday, May 11, 16
π
?
2
For any fixed values of , and , and for any , there is low probability that over the randomness in
x4
x2 x3
2
2
Wednesday, May 11, 16
π
4
3
2
?
2
Wednesday, May 11, 16
π
4
3
2
?
2
For any such that
x2, x3, x4, x′
2, x′ 3, x′ 4
(x2, x3, x4) ̸= (x′
2, x′ 3, x′ 4) there is low
probability that over the random
y2 = y′
2
choice of .
x1(= x′
1)
Wednesday, May 11, 16
π
4
3
2
?
2
For any such that
x2, x3, x4, x′
2, x′ 3, x′ 4
(x2, x3, x4) ̸= (x′
2, x′ 3, x′ 4) there is low
probability that over the random
y2 = y′
2
choice of .
x1(= x′
1)
‘C’ stands for ‘CANNOT’ be linear
Wednesday, May 11, 16
π
4
3
2
For any such that
x2, x3, x4, x′
2, x′ 3, x′ 4
(x2, x3, x4) ̸= (x′
2, x′ 3, x′ 4) there is low
probability that over the random
y2 = y′
2
choice of .
x1(= x′
1)
‘C’ stands for ‘CANNOT’ be linear
2 = ax1 + bx′ 2 + cx′ 3 + dx′ 4
Wednesday, May 11, 16
π
4
3
2
For any such that
x2, x3, x4, x′
2, x′ 3, x′ 4
(x2, x3, x4) ̸= (x′
2, x′ 3, x′ 4) there is low
probability that over the random
y2 = y′
2
choice of .
x1(= x′
1)
‘C’ stands for ‘CANNOT’ be linear (for )
w > 2
2 = ax1 + bx′ 2 + cx′ 3 + dx′ 4
Wednesday, May 11, 16
suitably “full rank” linear permutation “Feistel polynomial”:
Wednesday, May 11, 16
suitably “full rank” linear permutation “Feistel polynomial”:
− → x = (x1, . . . , xw) η(− → x )[i] =
j=2 x2j+1 j
if i = 1, xi if i ̸= 1
(where )
Wednesday, May 11, 16
π
Wednesday, May 11, 16
π U1 U2 U3 U4 V1 V2 V3 V4
Wednesday, May 11, 16
π U1 U2 U3 U4 V1 V2 V3 V4 |Ui| = |Vi| = q
Ui, Vi ⊆ {0, 1}n
Wednesday, May 11, 16
π U1 U2 U3 U4 V1 V2 V3 V4 |Ui| = |Vi| = q
Ui, Vi ⊆ {0, 1}n
|{(− → x , − → y ) : − → x ∈ U1 × · · · × Uw, − → y ∈ V1 × · · · × Vw, π(− → x ) = − → y }|
U1, . . . , Uw, V1, . . . , Vw
Wednesday, May 11, 16
π |Ui| = |Vi| = q
Ui, Vi ⊆ {0, 1}n
|{(− → x , − → y ) : − → x ∈ U1 × · · · × Uw, − → y ∈ V1 × · · · × Vw, π(− → x ) = − → y }|
U1, . . . , Uw, V1, . . . , Vw
Wednesday, May 11, 16
π |Ui| = |Vi| = q
Ui, Vi ⊆ {0, 1}n
|{(− → x , − → y ) : − → x ∈ U1 × · · · × Uw, − → y ∈ V1 × · · · × Vw, π(− → x ) = − → y }|
U1, . . . , Uw, V1, . . . , Vw
Wednesday, May 11, 16
|{(− → x , − → y ) : − → x ∈ U1 × · · · × Uw, − → y ∈ V1 × · · · × Vw, π(− → x ) = − → y }|
U1, . . . , Uw, V1, . . . , Vw
π |Ui| = |Vi| = q
≈ q2
Wednesday, May 11, 16
Wednesday, May 11, 16
Wednesday, May 11, 16
Wednesday, May 11, 16
πG πB πC πH
Wednesday, May 11, 16
πG πB πC πH
Basic Idea: Path-completion strategy similar to 14-round & 10-round Feistel simulators of HKT11, Seurin09
Wednesday, May 11, 16
πG πB πC πH
detect detect detect Basic Idea: Path-completion strategy similar to 14-round & 10-round Feistel simulators of HKT11, Seurin09
Wednesday, May 11, 16
πG πB πC πH
detect detect detect adapt adapt
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR) CANNOT be linear!
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB τ πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB τ πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
detect detect detect untangle adapt adapt
πG πH πI πB τ πC πJ πK πH
untangle untangle untangle
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
ν πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
ν πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
Wednesday, May 11, 16
ν πG πB τ πC πH
detect detect detect untangle (RCR) untangle (RCR) adapt adapt untangle (RCR) untangle (RCR)
XtraMiddleRnd XtraUntangleRnds
XtraOuterRnd
Wednesday, May 11, 16
RP → RO → RP CD length 5 CD length 7qqKK via 8-round Feistel (explicit) (existential) SECURITY q8/2n q4/2n q2/2nqqKK qq NUM CALLS TO RP 16 10 14 QUERY COMPLEXITY q4 q4 q SIM COMPLEXITY q4 q4 q2
Wednesday, May 11, 16