FSE 2020
Multiple Linear Cryptanalysis Using Linear Statistics
Jung-Keun Lee and Woo-Hwan Kim ETRI
Linear Statistics Jung-Keun Lee and Woo-Hwan Kim ETRI Our - - PowerPoint PPT Presentation
FSE 2020 Multiple Linear Cryptanalysis Using Linear Statistics Jung-Keun Lee and Woo-Hwan Kim ETRI Our contribution improved and extended approach of multiple linear cryptanalysis[BCQ04] (exploit dominant statistically independent linear
Jung-Keun Lee and Woo-Hwan Kim ETRI
(exploit dominant statistically independent linear trails)
in terms of data size, correlations of the trails, and threshold parameter
2
3
4
Γ Γ
1
Γ
1
Γ
2
Γ
𝑆−1
Γ
𝑆
long key cipher 𝐹
1 2𝑚 𝑦 −1 𝛿,𝑦 ⊕ 𝛿′,𝐺 𝑦
𝑆−1 𝜁(Γ𝑗, Γ𝑗+1; 𝐺𝑗+1)
1 |𝐸| 𝑄,𝐷 ∈𝐸 −1 𝛿,𝑄 ⊕ 𝛿′,𝐷
5
linear correlation of 𝐺: 𝔾2
𝑚 → 𝔾2 𝑛 w.r.t. pair of masks (𝛿, 𝛿’)
linear correlation of a linear hull for a given long key 𝑠𝑙 (key-independent) linear correlation of a trail undersampled correlation 𝐸: data (consisting of plaintext-ciphertext pairs) 𝐺 𝛿 𝛿′ 𝐹(𝑠𝑙,⋅) 𝛿 𝛿′
𝑆−1 Γ𝑗,𝑠𝑙𝑗 𝐷(Γ), or
𝑆−1 Γ𝑗,𝑠𝑙𝑗 𝜁 𝛿, 𝛿′; 𝑠𝑙 ≈ 𝐷(Γ)
6
regardless of 𝑠𝑙
𝑆−1 Λ𝑗,𝑠𝑙𝑗 𝐷(Λ;
parity bit determined by Λ and 𝑠𝑙
Unless mentioned otherwise, we assume:-
𝛾∗ =⊕𝑗=0
𝑆−1 Γ 𝑗, 𝑠𝑙𝑗 ∗
iff 𝜁 Γ
0, Γ 𝑆−1; 𝑠𝑙∗, 𝐸 𝐷 Γ >0
7
Γ𝑆 𝐺𝑆 Γ0 𝐺2 𝐺
1
𝐷 𝑄 𝑠𝑙0
∗
𝑠𝑙1
∗
𝑠𝑙𝑆−1
∗
Γ
1
Γ𝑆−1 𝜁 𝛿, 𝛿′; 𝑠𝑙, 𝐸 ≔ 1 |𝐸|
𝑄,𝐷 ∈𝐸
−1
𝛿,𝑄 ⊕ 𝛿′,𝐷
Pr
𝑌~N(𝜗,1/𝑂)(𝜗𝑌 > 0) = Φ
𝑂 𝜗
8
𝛾∗ =⊕𝑗=0
𝑆−1 Γ𝑗, 𝑠𝑙𝑗 ∗
𝜗 = 𝐷(Γ)
⇒ 𝑌 = −1 𝛾∗ 𝜁 𝛿, 𝛿′; 𝑠𝑙∗, 𝐸 : random variable letting 𝐸 vary with 𝐸 = 𝑂 𝑌~N(𝜗, 1/𝑂)
𝑡+𝑠
𝜁 Γ, 𝑠𝑙∗, 𝜆, 𝐸 to pick out candidates for (𝛾∗, 𝜆∗)
9
𝜆: bit string obtained by concatenating outer round key bits involved in the outer round computation of Γ𝑡, 𝑌𝑡 ⊕ Γ𝑡+𝑠, 𝑌𝑡+𝑠 Γ𝑡+𝑠 𝐺𝑡+𝑠 𝑄 𝐷 𝜆 Γ𝑡 𝐺𝑡+2 𝐺𝑡+1 𝑌𝑡+𝑠 𝑌𝑡
𝑡 𝑡+𝑠
Γ𝑡+1 Γ𝑡+𝑠−1 Γ𝑡, 𝑌𝑡 ⊕ Γ𝑡+𝑠+1, 𝑌𝑡+𝑠+1 = (𝜆, 𝑄, 𝐷) 𝜁 Γ, 𝑠𝑙∗, 𝜆, 𝐸 ≔ 1 𝐸
𝑄,𝐷 ∈𝐸
−1 𝜆,𝑄,𝐷 𝛾∗ =⊕𝑗=𝑡
𝑡+𝑠−1 Γ𝑗, 𝑠𝑙𝑗 ∗
𝛾: indeterminate, binary undersampled correlation gotten from 𝜆, 𝐸 threshold based or rank based
10
𝜁 Γ, 𝜆∗, 𝐸 ~N(𝜗,
1 𝑂)
1 𝑂)
are independent
as 𝐸 varies with |𝐸| = 𝑂 as (𝜆, 𝐸) varies with 𝜆 ≠ 𝜆∗
success probability, advantage can be estimated for threshold/rank based methods
𝑘 𝜗𝑘
2
∗, … , 𝛾𝑛 ∗ , 𝛾𝑘 ∗ =⊕𝑗=𝑡 𝑡+𝑠−1 ⟨Γ 𝑗 𝑘, 𝑠𝑙∗⟩
11
𝜐𝑘 𝜆𝑘, 𝐸 ≔ 𝑂 𝜁(Γj, 𝜆𝑘, 𝐸) Γ𝑡+𝑠
𝑘
𝐺𝑡+𝑠 𝑄 𝐷 𝜆𝑘 Γ𝑡
𝑘
𝐺𝑡+2 𝐺𝑡+1 𝑌𝑡+𝑠 𝑌𝑡
𝑡 𝑡+𝑠
𝜆𝑘: bit string obtained by concatenating outer round key bits involved in the outer round computation of Γ𝑡
𝑘, 𝑌𝑡 ⊕ Γ𝑡+𝑠 𝑘
, 𝑌𝑡+𝑠
𝝀: bit string obtained by combining of 𝜆𝑘’s (removing redundancy)
assume for simplicity that bits of 𝜆𝑘’s are either identical or independent
𝜸 = (𝛾1, … , 𝛾𝑛): any binary vector
12
𝑈 𝝀, 𝜸, 𝐸 ≔
𝑘
−1 𝛾𝑘𝜗𝑘𝜐𝑘 𝜆𝑘, 𝐸
𝝀 is said to have the wrong key type 𝐾𝑃 if {𝑘: 𝜆𝑘= 𝜆𝑘
∗} = 𝐾𝑃
(𝝀, 𝜸) is said to have the wrong key type (𝐾𝑃, 𝐾𝐽) if
13
𝑋 𝐾𝑃 : the set of 𝝀’s having the wrong key type 𝐾𝑃 𝑋 𝐾𝑃, 𝐾𝐽 : the set of (𝝀, 𝜸)’s having the wrong key type 𝐾𝑃, 𝐾𝐽
For 𝐾 ⊂ 1, … , 𝑛 , 𝜸 is said to have the type 𝐾 if 𝑘: 𝛾𝑘 = 𝛾𝑘
∗ = 𝐾
If 𝜸 has the type 𝐾 , denote it by 𝜸𝐾
1/2 𝑓− 𝒚−𝝂 𝑈𝚻−1 𝒚−𝝂 2
𝒀 ( 𝒃, 𝒀 + 𝑐 ≥ 0) = Φ( 𝒃,𝝂 +𝑐 𝝉𝑈𝒃 )
14
𝚻 = 𝝉𝝉𝑈 Φ: c.d.f. of the std normal distribution 𝝂 ∈ ℝ𝑛, 𝚻: positive definite 𝑛 × 𝑛 matrix over ℝ
∗𝜗1𝜐1 𝜆1, 𝐸 , … , −1 𝛾𝑛 ∗ 𝜗𝑛𝜐𝑛 𝜆𝑛, 𝐸 )
𝜈1, … , 𝜈𝑛 ; 𝜈𝑘 = 𝑂𝜗𝑘
2 for 𝑘 ∈ 𝐾𝑃, 𝜈𝑘 = 0 for 𝑘 ∉ 𝐾𝑃
2, … , 𝑂𝜗𝑛 2 )
15
For each 𝐾𝑃 ⊂ {1, … , 𝑛}
𝐸 = 𝑂, 𝝀 ∈ 𝑋 𝐾𝑃
( −1 𝛾1
∗𝜗1𝜐1 𝜆1
∗, 𝐸 , … , −1 𝛾𝑛
∗ 𝜗𝑛𝜐𝑛 𝜆𝑛
∗ , 𝐸 , 𝜗𝑘1𝜐𝑘1 𝜆𝑘1, 𝐸 , … , 𝜗𝑘𝑣𝜐𝑘𝑣 𝜆𝑘𝑣, 𝐸 )
𝒀𝐾𝑃 ∼ N( 𝝂𝐾𝑃, 𝚻𝐾𝑃)
𝜈1, … , 𝜈𝑛+𝑣 , 𝚻𝐾𝑃 = diag 𝜏1
2, … , 𝜏𝑛+𝑣 2
; (𝜈𝑘, 𝜏
𝑘 2) = (𝑂𝜗𝑘 2, 𝑂𝜗𝑘 2) for 𝑘 ∈ {1, … , 𝑛}, (𝜈𝑛+𝑚, 𝜏𝑛+𝑚 2
) = (0, 𝑂𝜗𝑘𝑚
2) for 𝑚 ∈ {1, … , 𝑣}
16
For each 𝐾𝑃
𝐸 = 𝑂, 𝝀 ∈ 𝑋 𝐾𝑃
Let 1, … , 𝑛 ∖ 𝐾𝑃 = {𝑘1, … , 𝑘𝑣} right key statistic wrong key statistic
distribution D 𝐾𝑃
𝐸 (𝑈(𝝀∗, 𝜸∗, 𝐸) ≥ 𝑢𝑂𝜗2)
= Pr
𝒀∼D{1,…,𝑛}
(𝑌1 + ⋯ + 𝑌𝑛 ≥ 𝑢𝑂𝜗2) = Φ( 1 − 𝑢 𝑂𝜗)
1 2𝑙𝑃+𝑛 × 𝐾𝑃,𝐾𝐽 :𝑥𝑠𝑝𝑜 |𝑋 𝐾𝑃 |𝑞fa 2𝑈, 𝐾𝑃,𝐾𝐽 (𝑢)
2𝑈, 𝐾𝑃,𝐾𝐽 (𝑢): probability that (𝝀, 𝜸) of type (𝐾𝑃, 𝐾𝐽) satisfies the threshold
condition
17
𝑈 𝝀, 𝜸, 𝐸 ≔
𝑘
−1 𝛾𝑘𝜗𝑘𝜐𝑘 𝜆𝑘, 𝐸 𝑙𝑃: number of bits in 𝝀 linear inequality
2𝑈, 𝐾𝑃,𝐾𝐽 for type 𝐾𝑃, 𝐾𝐽
2T(𝑢)
2𝑙𝑃+𝑛 𝐾𝑃,𝐾𝐽 :wrong 𝑋 𝐾𝑃 𝑞fa 2𝑈, 𝐾𝑃,𝐾𝐽 (𝑢)
2T 𝑢
18
Pr
𝐸,𝝀∈𝑋(𝐾𝑃)(𝑈(𝝀, 𝜸𝐾𝐽, 𝐸) ≥ 𝑢𝑂𝜗2)=
Pr
𝒀∼D 𝐾𝑃
( 𝑘∈𝐾𝑃∩𝐾𝐽 𝑌
𝑘 − 𝑘∈𝐾𝑃∖𝐾𝐽 𝑌 𝑘 + 𝑚=1 𝑣
−1 𝛾𝑘𝑚𝑌𝑛+𝑚) ≥ 𝑢𝑂𝜗2) = Φ( 𝑂 𝑘∈𝐾𝑃∩𝐾𝐽 𝜗𝑘
2 − 𝑘∈𝐾𝑃∖𝐾𝐽 𝜗𝑘 2 − 𝑢𝜗2 /𝜗)
≈ Φ(−𝑢 𝑂𝜗) (in many cases) linear inequality
1 2𝑙𝑃+𝑛 × 𝐾𝑃,𝐾𝐽 :𝑥𝑠𝑝𝑜 |𝑋 𝐾𝑃 |𝑞fa 2𝑆, 𝐾𝑃,𝐾𝐽
2𝑆, 𝐾𝑃,𝐾𝐽 : probability that (𝝀, 𝜸) of type (𝐾𝑃, 𝐾𝐽) is ranked higher than (𝝀∗, 𝜸∗)
19
2𝑆, 𝐾𝑃,𝐾𝐽 for type (𝐾𝑃, 𝐾𝐽):
Pr
𝐸,𝝀∈𝑋(𝐾𝑃)(𝑈(𝝀, 𝜸𝐾𝐽, 𝐸) ≥ 𝑈(𝝀∗, 𝜸∗, 𝐸) )
= Pr
𝒀∼D 𝐾𝑃
(−
𝑘:𝑘≤𝑛,𝑘∉𝐾𝑃
𝑌
𝑘 − 2 𝑘∈𝐾𝑃∖𝐾𝐽
−1 𝛾𝑘
∗𝑌
𝑘 + 𝑚=1 𝑣
−1 𝛾𝑘𝑚
∗
𝑌𝑛+𝑚) ≥ 𝑢𝑂𝜗2)
= Φ(− 𝑂(
𝑘∈𝐾𝑃∖𝐾𝐽
𝜗𝑘
2 + 1
2
𝑘∈ 1,…𝑛 ∖𝐾𝑃
𝜗𝑘
2 1/2
)
2R
2𝑙𝑃+𝑛 𝐾𝑃,𝐾𝐽 :wrong |𝑋 𝐾𝑃 |𝑞fa 2𝑆, 𝐾𝑃,𝐾𝐽
2R − 1
20
≈ Φ(− 𝑂/2𝜗) (in many cases) linear inequality
𝑂𝜗)
1 2𝑙𝑃+𝑛 × 𝐾𝑃,𝐾𝐽 :𝑥𝑠𝑝𝑜 |𝑋 𝐾𝑃 |𝑞fa 2𝐷, 𝐾𝑃,𝐾𝐽 (𝑢)
2𝐷, 𝐾𝑃,𝐾𝐽 (𝑢): probability that (𝝀, 𝜸) of type (𝐾𝑃, 𝐾𝐽) is ranked higher than
(𝝀∗, 𝜸∗) and satisfies the threshold condition
21
2𝐷, 𝐾𝑃,𝐾𝐽 (𝑢) for type (𝐾𝑃, 𝐾𝐽):
𝐸,𝝀∈𝑋(𝐾𝑃)(𝑈(𝝀, 𝜸𝐾𝐽, 𝐸) ≥ 𝑈(𝝀∗, 𝜸∗, 𝐸), 𝑈(𝝀, 𝜸𝐾𝐽, 𝐸) ≥ 𝑢𝑂𝜗2)
2C(𝑢)
2𝑙𝑃+𝑛 𝐾𝑃,𝐾𝐽 :wrong |𝑋 𝐾𝑃 |𝑞fa 2C,(𝐾𝑃,𝐾𝐽) t
2C(𝑢)
22
can be estimated numerically or by simulation Two linear inequalities ≈ 𝑞fa
2C,(∅,∅) t (in many cases)
1 = −2−19.75, 𝑙𝑃 1 = 12
2 = −2−20.07, 𝑙𝑃 2 = 18
3 = −2−19.75, 𝑙𝑃 3 = 12
4 = −2−20.07, 𝑙𝑃 4 = 18
23
𝜗 = 2−18.89
𝜆1, 𝜆2 share 6 bits 𝜆3, 𝜆4 share 6 bits 𝝀 has 48 bits: 𝑙𝑃 = 48 𝜆1||𝜆2 and 𝜆3||𝜆4 does not have any bits in common 𝑈(𝝀, 𝜸, 𝐸) ≥ 𝑢𝑂𝜗2
24
theoretical/experimental 𝑄S theoretical/experimental advantage 1,000 experiments 𝑂 up to 242.78
complexity
25
adding outer rounds requires much overhead
26
27
Our attacks have comparable complexities; advantageous with smaller data size.
28
covariance matrices – need to be precomputed in advance
S, 𝑄fa can be computed in the same way for each attack
normal random variable
29
consisting of component statistics
and Algorithm 2 style attacks in terms of data size, correlations of the trails, and threshold parameter incorporating the decomposition of outer key bits
statistical independent trails
30