Background Correlation Analysis Results Conclusion
Side-channel analysis of six SHA-3 candidates in HMAC scheme
Olivier Benoˆ ıt and Thomas Peyrin
CHES 2010 Workshop
Santa Barbara - August 18, 2010
Side-channel analysis of six SHA-3 candidates in HMAC scheme - - PowerPoint PPT Presentation
Background Correlation Analysis Results Conclusion Side-channel analysis of six SHA-3 candidates in HMAC scheme Olivier Beno t and Thomas Peyrin CHES 2010 Workshop Santa Barbara - August 18, 2010 Background Correlation Analysis
Background Correlation Analysis Results Conclusion
Olivier Benoˆ ıt and Thomas Peyrin
Santa Barbara - August 18, 2010
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Theory Practice Results AES-bases candidates Others Candidates Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
ECHO Grøstl SHAvite-3 HAMSI BLAKE CubeHash
Background Correlation Analysis Results Conclusion
application to IDEA, RC6, and HMAC construction (CHES 2005), Lemke et al.
based hash functions (ACISP 2006), Okeya et al.
(WISA2007), McEvoy et al.
crytopgaphic hash functions (INDOCRYPT 2007), Gauravaram et al.
(CHES 2009), Fouque et al.
Background Correlation Analysis Results Conclusion
CVin h K ⊕ ipad CVin
1
h M1 h Mk Hin CVout h K ⊕ opad CVout
1
h Hout
1 and CVout 1
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
w = SBOXAES(cv ⊕ m)
w = (cv ⊞ m)mod256
w = cv ⊕ m
w = SBOXHAMSI(cvi+1||mi+1||cvi||mi)
Background Correlation Analysis Results Conclusion
w = SBOXAES(cv ⊕ m)
w = (cv ⊞ m)mod256
w = cv ⊕ m
w = SBOXHAMSI(cvi+1||mi+1||cvi||mi)
Background Correlation Analysis Results Conclusion
w = SBOXAES(cv ⊕ m)
w = (cv ⊞ m)mod256
w = cv ⊕ m
w = SBOXHAMSI(cvi+1||mi+1||cvi||mi)
Background Correlation Analysis Results Conclusion
w = SBOXAES(cv ⊕ m)
w = (cv ⊞ m)mod256
w = cv ⊕ m
w = SBOXHAMSI(cvi+1||mi+1||cvi||mi)
Background Correlation Analysis Results Conclusion
correlation (AES Sbox) 1
correlation (modular addition) 1 −0.5
correlation (XOR) 1 −1
Background Correlation Analysis Results Conclusion
real and guess key j = 0 j = 1 j = 2 j = 3 r = 0 +1.00 −0.17 −0.56 −0.87 r = 1 −0.17 +1.00 +0.87 −0.09 r = 2 −0.56 +0.87 +1.00 +0.17 r = 3 −0.87 −0.09 +0.17 +1.00
Background Correlation Analysis Results Conclusion
|cw|
Background Correlation Analysis Results Conclusion
|cw|
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
i1[b] ⊕ β · m′ i2[b] ⊕ γ · m′ i3[b] ⊕ δ · m′ i4[b]
i[b] = Sbox(wi[b] ⊕ ti[b])
i, four selection functions can be exploits
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
0[b])
0[b])
Background Correlation Analysis Results Conclusion
Mi(init(CVi)), CVi)
cv4 cv5 cv6 cv7 cv0 cv1 cv2 cv3
t4 t5 cv4 cv5 t2 t3 cv2 cv3 t6 t7 t0 t1 cv6 cv7 cv0 cv1
Background Correlation Analysis Results Conclusion
G0(v0, v4, v8, v12) G1(v1, v5, v9, v13) G2(v2, v6, v10, v14) G3(v3, v7, v11, v15) G4(v0, v5, v10, v15) G5(v1, v6, v11, v12) G6(v2, v7, v8, v13) G7(v3, v4, v9, v14)
Background Correlation Analysis Results Conclusion
G0(cv0, cv4, t0, t4) G1(cv1, cv5, t1, t5) G2(cv2, cv6, t2, t6) G3(cv3, cv7, t3, t7)
Background Correlation Analysis Results Conclusion
w cv1 cv2 cv3 rot 7 cv′
1
cv′
1
z x rot 11
Background Correlation Analysis Results Conclusion
i[b] || cv′ i+2[b] || m′ i+4[b] || cv′ i+6[b])
i[b] || m′ i+2[b] || cv′ i+4[b] || m′ i+6[b])
Background Correlation Analysis Results Conclusion
Background Correlation Analysis Results Conclusion
Candidates Selection function Correlation analysis ECHO SBOXAES 64 analysis at byte level (x4 possibilities) Grøstl SBOXAES 64 analysis at byte level SHAvite-3 SBOXAES 16 + 16 analysis at byte level BLAKE Modular addition 32 analysis at byte level CubeHash Modular addition and XOR 64 ADD + 64 XOR analysis at byte level HAMSI SBOXHAMSI 128 analysis at 2-bit level
Background Correlation Analysis Results Conclusion
cipher
AES
XOR selection function)
arithmetic to boolean masking
Background Correlation Analysis Results Conclusion
cipher
AES
XOR selection function)
arithmetic to boolean masking
Background Correlation Analysis Results Conclusion
cipher
AES
XOR selection function)
arithmetic to boolean masking
Background Correlation Analysis Results Conclusion