Outline Primitive Element Theorem Diffie Hellman Key Distribution

Slides:



Advertisements
Similar presentations
Public Key Cryptography Nick Feamster CS 6262 Spring 2009.
Advertisements

Public Key Cryptography INFSCI 1075: Network Security – Spring 2013 Amir Masoumzadeh.
Asymmetric-Key Cryptography
7. Asymmetric encryption-
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
Elliptic Curve. p2. Outline EC over Z p EC over GF(2 n )
1 Cryptosystems Based on Discrete Logarithms. 2 Outline [1] Discrete Logarithm Problem [2] Algorithms for Discrete Logarithm –A trivial algorithm –Shanks’
Dr. Lo’ai Tawalbeh Fall 2005 Chapter 10 – Key Management; Other Public Key Cryptosystems Dr. Lo’ai Tawalbeh Computer Engineering Department Jordan University.
CS470, A.SelcukPublic Key Cryptography1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Public Key Model 8. Cryptography part 2.
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
CSCI 398 Research Topics in Computer Science Yana Kortsarts Computer Science Department Widener University Chester, PA.
ElGamal Public Key Cryptography CS 303 Alg. Number Theory & Cryptography Jeremy Johnson Taher ElGamal, "A Public-Key Cryptosystem and a Signature Scheme.
Lecture 7b: The Diffie-Hellman Secret Sharing Scheme Wayne Patterson SYCS 653 Fall 2009.
Great Theoretical Ideas in Computer Science.
Prelude to Public-Key Cryptography Rocky K. C. Chang, February
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Cryptography and Network Security Chapter 10 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
1 離散對數密碼系統 交通大學資訊工程系 陳榮傑. 2 Outline 離散對數問題 (Discrete Logarithm Problem) 離散對數演算法 (DL Algorithms) –A trivial algorithm –Shanks’ algorithm –Pollard’s algorithm.
Discrete Logarithm(s) (DLs) Fix a prime p. Let a, b be nonzero integers (mod p). The problem of finding x such that a x ≡ b (mod p) is called the discrete.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
1 Network and Computer Security (CS 475) Modular Arithmetic and the RSA Public Key Cryptosystem Jeremy R. Johnson.
1 Thinking the Impossible “Modern Cryptography” Jeremy R. Johnson.
Diffie-Hellman Key Exchange first public-key type scheme proposed by Diffie & Hellman in 1976 along with the exposition of public key concepts – note:
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
1 Diffie-Hellman (Key Exchange) Protocol Rocky K. C. Chang 9 February 2007.
Information Security and Management 10. Other Public-key Cryptosystems Chih-Hung Wang Fall
week 8Complexity of Algorithms1 Elementary Number Theory Given positive integers a and b, we use the notation a¦b to indicated that a divides b, i.e.,
Cryptography Deffie hellman. organization Foundations Symmetric key Symmetric key weaknesses Assymmetric key Deffie hellman – key exchange RSA – public.
Key Exchange in Systems VPN usually has two phases –Handshake protocol: key exchange between parties sets symmetric keys –Traffic protocol: communication.
@Yuan Xue 285: Network Security CS 285 Network Security Digital Signature Yuan Xue Fall 2012.
CS480 Cryptography and Information Security Huiping Guo Department of Computer Science California State University, Los Angeles 14. Digital signature.
Diffie-Hellman-Merkle Ramki Thurimella. 2 Key Exchange Protocol Establishing secret keys for N people Requires N(N-1)/2 separate keys This is a quadratic.
최신정보보호기술 경일대학교 사이버보안학과 김 현성.
Thinking the Impossible “Modern Cryptography”
CSCE 715: Network Systems Security
Asymmetric-Key Cryptography
Network Security Design Fundamentals Lecture-13
Key Exchange References: Applied Cryptography, Bruce Schneier
CS 2210:0001Discrete Structures Modular Arithmetic and Cryptography
Prelude to Public-Key Cryptography
B504/I538: Introduction to Cryptography
RSA and El Gamal Cryptosystems
Elliptic Curves.
IEEE TRANSACTIONS ON INFORMATION THEORY, JULY 1985
Coin Flipping Protocol
Topic 25: Discrete LOG, DDH + Attacks on Plain RSA
Input: A={a1, a2, … an} – public key, S - ciphertext
Diffie-Hellman Key-Exchange Algorithm
Systems Architecture I
Public Key Cryptography
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Practical Aspects of Modern Cryptography
Key Management Network Systems Security
El Gamal and Diffie Hellman
CSCE 715: Network Systems Security
El Gamal and Diffie Hellman
Introduction to Elliptic Curve Cryptography
Discrete Log ElGamal Cryptosystem
Diffie-Hellman Key Exchange
CSCE 715: Network Systems Security
CSCI284 Spring 2009 GWU Sections 5.1, 5.2.2, 5.3
CSCE 715: Network Systems Security
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Network Security Design Fundamentals Lecture-13
Presentation transcript:

ElGamal Public Key Cryptography CS 303 Alg. Number Theory & Cryptography Jeremy Johnson Taher ElGamal, "A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms", IEEE Transactions on Information Theory, v. IT-31, n. 4, 1985, pp469–472 or CRYPTO 84, pp10–18, Springer-Verlag.

Outline Primitive Element Theorem Diffie Hellman Key Distribution ElGamal Encryption ElGamal Digital Signatures 12/10/2008 Goldwasser

Public Key Cryptography Let M be a message and let C be the encrypted message (ciphertext). A public key cryptosystem has a separate method E() for encrypting and D() decrypting. D(E(M)) = M Both E() and D() are easy to compute Publicly revealing E() does not make it easy to determine D() E(D(M)) = M - needed for signatures The collection of E()’s are made publicly available but the D()’s remain secret. Called a one-way trap-door function (hard to invert, but easy if you have the secret information)

Order Definition. Let b Zn* The order of b is the smallest positive integer satisfying be  1 (mod n). Theorem 1. If b has order e modulo n and if j is a positive integer such that bj  1 (mod n), then e|j. Proof. j = qe+r, 0  r < e. bj  1  (be)q br  br (mod n). This implies that r = 0, since e is the smallest power of b equivalent to 1 mod n. Corollary 2. Let b Zn*. ord(b)|(n).

Primitive Element Theorem Zp* = <>, i.e. ord() = p-1. Example Z7* = <3> 31=3, 32=2, 33=6, 34=4, 35=5, 36=1 Z13* = <2> 21=2, 22=4, 23=8, 24=3, 25=6, 26=12, 27=11, 28=9, 29=5, 210=10, 211=7, 212=1 Note. ord() = p-1  {1,, 2,…, p-1} distinct.

Discrete Logarithms Discrete log problem Example Given Zp* = <> log(y) = x, if y = x. Example Z13* = <2> 21=2, 22=4, 23=8, 24=3, 25=6, 26=12, 27=11, 28=9, 29=5, 210=10, 211=7, 212=1 Log2(5) = 9.

Properties of Primitive Elements Theorem 3. If b has order e modulo n, then ord(bi) = e/gcd(e,i). Theorem 4. Let p be a prime and d a divisor of p-1, then the number of positive integers less than p with order d is (d). Corollary 5. The number of primitive elements mod p is equal to (p-1) > 1.

Some Lemmas Lemma 6. Let P(x) be a polynomial of degree t and let p be a prime. If p does not divide the coefficient of xt in P(x), then P(x)  0 (mod p), has at most t solutions mod p. Proof. By induction on the degree of P(x)=t. P(x1) = 0  P(x) = P1(x)(x - x1), and the degree of P1(x) = t-1. Lemma 7. The sum of (d) over the divisors of n = n. Example: n=12. (1)+ (2)+ (3)+ (4)+ (6)+ (12)=1+1+2+2+2+4 = 12.

Primitive Element Theorem Theorem. Let p be a prime and d a divisor of p-1, then the number of positive integers less than p with order d is (d). Proof. If there is an element a of order d, then by Theorem 3, ai, gcd(i,d)=1 is also of order d. By Lemma 6, 1, a, a2,…,ad-1 are the roots of P(x)=xd-1, and there (d) elements of order d. Since every elements is of order d|p-1 and p-1 = d|p-1 (d), there must be an element of order d for every d|p-1 and hence exactly (d) of them.

Public Key Distribution The goal is for two users to securely exchange a key over an insecure channel. The key is then used in a normal cryptosystem Diffie-Hellman Key Exchange A = ga mod p (p prime, g primitive – all elements of (Zp)*are powers of g) [Alice sends A to Bob] a = logg A mod p [discrete log] B = gb mod p [Bob sends B to Alice] K = gab mod p [shared key] Ab = gab = Ba mod p

ElGamal Encryption Zp* = <g>, m  Zp message Bob encrypts a message to Alice. Alice: a random, A = ga, public key = (p, g, A) Bob: k random (ephemeral key), c1 = gk, shared key K = Ak = gak EA(m) = (c1,c2), c2=mK mod p. DA((c1,c2)) = c2*(1/K) mod p, K = c1 a = gak Security depends on Computational Diffie-Hellman (CDH) assumption: given (g, ga,gb) it is hard to compute gab Do not use same k twice

ElGamal Digital Signature Zp* = <g>, m  Zp message Alice signs message m. Alice: h = gx, public key = (p, g, A), secret key = x. Alice: k random with gcd(k,p-1)=1 r = gk (mod p) s = (m – xr)(1/k) mod p-1 [m = sk + xr (mod p-1)] Signature = (r,s) Verify gm=rshr