private key versus public key
play

Private key versus Public Key Reviews on PKC DH ElGamal Massey - PowerPoint PPT Presentation

Elliptic curves over F q Reviews on PKC DH ElGamal Massey Omura Discrete Logarithms DL Attacks BSGS PohlihHellmann DL records Square roots E LLIPTIC CURVES C RYPTOGRAPHY Reminder from Yesterday Points of finite order Important


  1. Elliptic curves over F q Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records Square roots E LLIPTIC CURVES C RYPTOGRAPHY Reminder from Yesterday Points of finite order Important Results F RANCESCO P APPALARDI Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading #2 - S ECOND L ECTURE . S EPTEMBER 15 TH 2015 National University of Mongolia Ulan Baatar, Mongolia September 15, 2015

  2. Elliptic curves over F q Private key versus Public Key Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records Square roots Reminder from Yesterday Points of finite order Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading

  3. Elliptic curves over F q Private key versus Public Key Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records Square roots Reminder from Yesterday Points of finite order Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading

  4. Elliptic curves over F q Classical General Examples of PKC Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS ❶ (1976) Diffie Hellmann Key exchange protocol IEEE Trans. Information Theory IT-22 (1976) Pohlih–Hellmann ❷ (1983) Massey Omura Cryptosystem Proc. 4 th Benelux Symposium on Information Theory (1983) DL records Square roots ❸ (1984) ElGamal Cryptosystem IEEE Trans. Information Theory IT-31 (1985) Reminder from Yesterday Points of finite order Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading

  5. Elliptic curves over F q PKS Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records Square roots Reminder from Yesterday Points of finite order Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading

  6. Elliptic curves over F q Diffie–Hellmann key exchange Reviews on PKC DH ElGamal DHKEP Massey – Omura Discrete Logarithms ❶ Alice and Bob agree on a cyclic group G and on a generator g in G DL Attacks BSGS ❷ Alice picks a secret a , 0 ≤ a ≤ | G | Pohlih–Hellmann DL records ❸ Bob picks a secret b , 0 ≤ b ≤ | G | Square roots ❹ They compute and publish g a ( Alice ) and g b ( Bob ) Reminder from Yesterday Points of finite order ❺ The common secret key is g ab Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem Legendre Symbols Further reading

  7. Elliptic curves over F q ElGamal Cryptosystem Reviews on PKC DH ElGamal Alice wants to sent a message x ∈ G (cyclic group) to Bob Massey – Omura Discrete Logarithms ElGamal SETUP: DL Attacks BSGS ❶ Alice and Bob agree on a generator g in G Pohlih–Hellmann ❷ Bob picks a secret b , 0 < b ≤ | G | , he computes β = g b ∈ G and publishes β DL records Square roots Reminder from Yesterday Points of finite order Important Results ElGamal ENCRYPTION: (Alice) Hasse’s Theorem Waterhouse’s Theorem ① Alice picks a secret k , 0 < k ≤ | G | Rück’s Theorem ② She computes α = g k ∈ G and γ = x · β k ∈ G Legendre Symbols Further reading ③ The encrypted message is E ( x ) = ( α, γ ) ∈ G × G ElGamal DECRYPTION: (Bob) D ( α, γ ) = γ · α | G |− b ① Bob computes D ( E ( x )) = D ( α, γ ) = x · g bk · g k ( | G |− b ) = x since g k | G | = 1 ② It works since

  8. Elliptic curves over F q Massey Omura on any finite Group G Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records Square roots Alice Bob Reminder from Yesterday Points of finite order SETUP: Important Results Hasse’s Theorem ① Alice and Bob each Waterhouse’s Theorem pick a secret key k A , k B ∈ U ( Z / | G | Z ) • Rück’s Theorem compute ℓ A , ℓ B ∈ U ( Z / | G | Z ) such that k A ℓ A ≡ 1 ( mod | G | ) and k B ℓ B ≡ 1 ( mod | G | ) • Legendre Symbols Further reading ④ Alice key is ( k A , ℓ A ) ( k A to lock and ℓ A to unlock) ⑤ Bob key is ( k B , ℓ B ) ( k B to lock and ℓ B to unlock) WORKING: To send the message P ① Alice computes and sends M = P k A ∈ G ② Bob computes and sends back N = M k B ∈ G ③ Alice computes L = N ℓ A ∈ G and sends it back to Bob ④ Bob decrypt the message computing P = L ℓ B ∈ G It works: P = L ℓ B = N ℓ A ℓ B = M k B ℓ A l B = P k A k B ℓ A ℓ B ∈ G

  9. Elliptic curves over F q The generic Discrete Logarithms problem Reviews on PKC DH ElGamal Massey – Omura • G = � g � cyclic group Discrete Logarithms DL Attacks • g a generator BSGS • x ∈ G Pohlih–Hellmann DL records Discrete Logarithm Problem: Square roots Reminder from Yesterday Points of finite order Find n ∈ Z / | G | Z such that x = g n Important Results Hasse’s Theorem Waterhouse’s Theorem Rück’s Theorem • Need to specify how to make the operations in G Legendre Symbols • If G = ( Z / n Z , +) then discrete logs are very easy. Further reading • If G = (( Z / n Z ) ∗ , × ) then G is cyclic iff n = 2 , 4 , p α , 2 · p α where p is an odd prime: famous theorem of Gauß. • In G = ( Z / p Z ) ∗ =: F ∗ p there is no efficient algorithm to compute DL. • We are interested in the case when G = E ( F q ) where E / F q is an elliptic curve • Primordial public key cryptography is based on the difficulty of the Discrete Log problem

  10. Elliptic curves over F q Classical DL attacks Reviews on PKC DH ElGamal Massey – Omura Discrete Logarithms DL Attacks BSGS Pohlih–Hellmann DL records ✌ Shanks baby-step, giant step (BSGS) Proc. 2 nd Manitoba Conf. Numerical Mathematics (Winnipeg, 1972). Square roots Reminder from Yesterday ✌ Pohlig–Hellmann Algorithm IEEE Trans. Information Theory IT-24 (1978). Points of finite order Important Results ✌ Index computation algorithm Hasse’s Theorem Waterhouse’s Theorem ✌ Sieving algorithms La Macchia & Odlyzko, Designs Codes and Cryptography 1 (1991) Rück’s Theorem Legendre Symbols Further reading NOTE: The last two are "very special" for F ∗ q

  11. Elliptic curves over F q D ISCRETE L OGARITHMS : continues Shanks Baby Step Giant Step algorithm Reviews on PKC DH ElGamal Input: A group G = � g � and a ∈ G Massey – Omura k ∈ Z / | G | Z such that a = g k Output: Discrete Logarithms M := ⌈ � | G |⌉ DL Attacks 1. BSGS For j = 0 , 1 , 2 , . . . , M . 2. Pohlih–Hellmann Compute g j and store the pair ( j , g j ) in a table DL records A := g − M , B := a 3. Square roots Reminder from Yesterday For i = 0 , 1 , 2 , . . . , M − 1 . 5. Points of finite order -1- Check if B is the second component ( g j ) of any Important Results pair in the table Hasse’s Theorem Waterhouse’s Theorem -2- If so, return iM + j and halt. Rück’s Theorem -3- If not B = B · A Legendre Symbols Further reading • The BSGS algorithm is a generic algorithm. It works for every finite cyclic group. • based on the fact that ∀ x ∈ Z / n Z , x = j + im with m = ⌈√ n ⌉ , 0 ≤ j < m and 0 ≤ i < m • Not necessary to know the order of the group G in advance. The algorithm still works if an upper bound on the group order is known. • Usually the BSGS algorithm is used for groups whose order is prime. • The running time of the algorithm and the space complexity is O ( � | G | ) , much better than the O ( | G | ) running time of the naive brute force • The algorithm was originally developed by Daniel Shanks.

  12. Elliptic curves over F q D ISCRETE L OGARITHMS : continues The Pohlig–Hellman Algorithm Reviews on PKC DH ElGamal Massey – Omura In some groups Discrete logs are easy. For example if G is a cyclic group and # G = 2 m then we know that there Discrete Logarithms DL Attacks are subgroups: BSGS � 1 � = G 0 ⊂ G 1 ⊂ · · · ⊂ G m = G Pohlih–Hellmann DL records such that G i is cyclic and # G i = 2 i . Furthermore Square roots Reminder from Yesterday y ∈ G such that y 2 i = 1 � Points of finite order G i = � . Important Results Hasse’s Theorem Waterhouse’s Theorem If G = � g � , for any a ∈ G , either a 2 m − 1 = 1 or a 2 m − 1 = g 2 m − 1 . From this property we deduce the algorithm: Rück’s Theorem Legendre Symbols Further reading A group G = � g � , | G | = 2 m and a ∈ G Input: k ∈ Z / | G | Z such that a = g k Output: A := a , K = 0 1. For j = 1 , 2 , . . . , m . 2. If A 2 m − j � = 1 , A := g − 2 j − 1 · A ; K := K + 2 j − 1 3. Output K

Recommend


More recommend