250 likes | 349 Vues
Explore fault attacks on elliptic curve cryptosystems (ECC), including differential and sign change attacks, and effective countermeasures to ensure hardware security. Learn the vulnerabilities and safeguard your system. References included.
E N D
In The Name of AllahFault attacks on ECC FereshteMozafari ArezooDabaghi
FLOW • Introduction • Fault attacks • Differential fault attack & its countermeasure • Sign change fault attack & its countermeasure • References Hardware Security and Trust, CE, SUT
Introduction • An EC over Fp (p > 3) satisfy with: Y2 = x3 + ax2 + b (mod p) • In cryptosystems based on EC, a crucial computation is the scalar multiplication of a public base point P with a secret scalar factor k. Q = kP • Attacks aim to recover the value of k. Hardware Security and Trust, CE, SUT
Fault Attacks • Differential Fault Attack(DFA) • Sign Change Fault Attack(SCFA) • M Safe- Error Analysis • C Safe- Error Analysis • Invalid Curve Analysis • Invalid Point Analysis Hardware Security and Trust, CE, SUT
Differential fault attack(0) Scalar multiplication Q = k.P P, , p
Differential fault attack(1) • Preliminaries • If enforce a fault randomly in a register than can recover secret key in expected polynomial time • binary length of n is k • value stored in variable Qbefore iteration I • e Hardware Security and Trust, CE, SUT
Differential fault attack(2) • Method • Run ECSM once and collect the correct result () • Enforce register fault in a register holding the variable Q , in iteration n-m < j < n n-1 j 0 Hardware Security and Trust, CE, SUT
Differential fault attack(3) 3. Find the index of the first iteration j’ with j’ > j and =1 n-1 j’ j 0 Hardware Security and Trust, CE, SUT
Differential fault attack(4) 4.find candidate for the disturbed Q-value 1. check each i with ( n-m < i < n) as candidate for j’ 2. x = as candidate for the n-i most significant bit of k j n-1 j’=i 0 Hardware Security and Trust, CE, SUT
Differential fault attack(4) 4.find candidate for the disturbed Q-value j n-1 j’=i 0 . .P)’ = - . .P Hardware Security and Trust, CE, SUT
Differential fault attack(5) 5. For each choice of x and i we consider all disturbed Q- values () with can derive from by flipping one bit. 6. calculate by : Hardware Security and Trust, CE, SUT
Differential fault attack(6) 7. if is identical by of device • i as a candidate for j’ • as a candidate for • binary representation of x as a candidate for upper n-j’ of k Hardware Security and Trust, CE, SUT
Countermeasure for DFA • intermediate results (Qi , Hi)should be regularly checked • randomize the scalar k Hardware Security and Trust, CE, SUT
SCFA on ECC(1) • Over NAF-based left-to-right doubling algorithm Hardware Security and Trust, CE, SUT
SCFA on ECC(2) • Basic idea: recover the bits of k in pieces of 1 ≤ r ≤ m bits • A SCF changes the sign of y-coordinate of an attacked point Q Qf Hardware Security and Trust, CE, SUT
SCFA on ECC(3) • the only unknown part is Li (k) • This allows to recover bits of k starting from the LSB + - Hardware Security and Trust, CE, SUT
Injection of SCF on Qi ‘(1) • Input: access to algorithm1 n the length of private key, k > 0 in NAF Q = kP, m a parameter for acceptable amount of offline work • Output: k with probability at least 1/2 • #Step1: Collect faulty output collect the set S by including SCF on Qi’ Hardware Security and Trust, CE, SUT
Injection of SCF on Qi‘(2) • #step2: Inductive Retrieval of Secret Key Bits 1. Set s := -1 2. While(s < n-1) do 3.Set 4. For all lengths of r = 1,2,…,m do 5. For all valid NAF-patterns x = (xs+1,xs+2,…,xs+r) do S+1 LSBs of k are known Compute known LSB part Try all possible bit pattern with length r Hardware Security and Trust, CE, SUT
Injection of SCF on Qi‘(3) 6. Set 7. For all do 8. If then 9. conclude ks+1 = xs+1, ks+2 = xs+2,…, ks+r= xs+r , set s := s + r Compute test condidateTx Verify Tx Hardware Security and Trust, CE, SUT
Injection of SCF on Qi‘(4) 10. If no test candidate satisfies the verification step,then assume that ks+1 = 0, set s := s + 1 11. continue at Line 2 12. Verify Q = kP If this fails then output ”failure” 13. Output “k” Hardware Security and Trust, CE, SUT
Countermeasure for SCFA(1) • Uses a second elliptic curve whose order is a small prime number(t) to verify the final results E = Ep:= E( Fp ) Et:= E( Ft ) Eptis defined with parameters Aptand Bpt Apt≡ Apmod p, Apt≡ At mod t Bpt≡ Bpmod p, Bpt≡ Btmod t Qpt = k Ppt Hardware Security and Trust, CE, SUT
Countermeasure for SCFA(2) • Attacks in Line 4 cannot yield a faulty output Hardware Security and Trust, CE, SUT
References 1. J. Blomer, M. Otto, J. Seifert“Sign Change Fault Attacks On Elliptic Curve Cryptosystems,” Fault Diagnousis and Tolerance iv Cryptograghy , pp. 36-52, 2006. 2. J. Fan, I. Verbouwhede, “An Updated Survey on Secure ECC Implementations: Attacks, Countermeasures and Cost,” Cryptography and Security, pp. 265-282, 2012. 3. J. Fan, X. Gue, E. Mulder, “State-of-the-art of secure ECC implementations: a survey on known side-channel attacks and countermeasures,” International Symposium on Hardware-Oriented Security and Trust , pp. 165-171, 2010. 4. I. Biehel, B. Meyer, V. Muller, "Diferential Fault Attacks on Elliptic Curve Cryptosystems," Advance in Cryptography, pp. 131-141, 2000. 5. B. Johannes, O. Martin, S. Jean-Pierre, ‘Sign Change Fault Attacks on Elliptic Curve Cryptosystems” Hardware Security and Trust, CE, SUT
When that you think every thing is hidden and no one can see within , remember my friend , God can