exposition of public key concepts note: now know that James Ellis (UK CESG) secretly proposed the concept in 1970 is a practical method for public exchange of a secret key used in a number of commercial products
a public-key distribution scheme
cannot be used to exchange an arbitrary message rather it can establish a common key known only to the two participants
value of key depends on the participants (and their
private and public key information) based on exponentiation in a finite (Galois) field (modulo a prime or a polynomial) - easy security relies on the difficulty of computing discrete logarithms (similar to factoring) hard 8/16/2016
A.Aruna, Assistant Professor, Department
of Information Technology
8/16/2016
A.Aruna, Assistant Professor, Department
of Information Technology
all users agree on global parameters:
prime number q Integer - primitive root mod q User A and B wish to exchange a key, User A Selects a random Integer xA < q & xA Calculate yA = mod q Compute Key xA K = (yB) mod q User B Selects a random Integer xB < q & xB Calculate yB = mod q - Compute Key xB K = (yA) mod q Each side keep X value as private and Y value as public 8/16/2016
A.Aruna, Assistant Professor, Department
of Information Technology
Two calculation produce identical Result
We know that K = (yB) xB
= (
xA
= (
8/16/2016
xA
xB
mod q = (
xA
xB xA
mod q =
mod q)
mod q )
xB
xA
mod q xA
mod q = (
mod q = (yA)
xB
xB
mod q
mod q
A.Aruna, Assistant Professor, Department
of Information Technology
users Alice & Bob who wish to swap keys
Choose the prime q=353 and = 3 select random secret keys: A chooses xA=97, B chooses xB=233 compute public keys 97 yA=3 mod 353 = 40 (Alice) 233 yB=3 mod 353 = 248 (Bob) compute shared session key as xA 97 KAB= yB mod 353 = 248 = 160 (Alice) xB 233 KAB= yA mod 353 = 40 = 160 (Bob) 8/16/2016