Modern Cryptography
Diffie-Hellman Key Exchange
Diffie-Hellman Key Exchange is used to generate a shared secret key between two users over an insecure channel.
Algorithm Steps
- 1Choose prime number p.
- 2Choose primitive root g.
- 3User A selects private key a.
- 4User B selects private key b.
- 5Calculate public keys A and B.
- 6Exchange public keys.
- 7Calculate shared secret keys.
Formula
A = gᵃ mod p B = gᵇ mod p Shared Key A = Bᵃ mod p Shared Key B = Aᵇ mod p
Example
p = 23, g = 5, a = 6, b = 15 Public key of A: 8 Public key of B: 19 Shared key for A: 2 Shared key for B: 2