|
|
Algorithm 1 Elliptic curve Diffie-Hellman (ECDH) key agreement. |
|
| 1: |
Agree upon domain parameters (p, a, b, G, n, h) |
| 2: |
Alice: |
| 3: |
Private key: dA ⇐ A random integer
in range: [1, n − 1] |
| 4: |
Public key: QA ⇐ dAG
|
| 5: |
Alice's key pair will be (dA, QA) |
| 6: |
Send QA to Bob |
| 7: |
Bob: |
| 8: |
Private key: dB ⇐ A random integer
in range: [1, n − 1] |
| 9: |
Public key: QB ⇐ dBG
|
| 10: |
Bob's key pair will be (dB, QB) |
| 11: |
Compute (xk, yk) ⇐ dBQA, where
xk is the shared key |
| 12: |
Send QB to Alice |
| 13: |
Alice: |
| 14: |
Compute (xk, yk) ⇐ dAQB, where
xk is the shared key |
|