This repository has been archived on 2025-01-16. You can view files and clone it, but cannot push or open issues or pull requests.
CSS2021-SecLab-WriteUp/diffie-hellman-ii.md
2023-01-23 13:31:57 +01:00

741 B

Diffie-Hellman II

Gegegen sind die Parameter für den Diffie-Hellman-Algorithmus:

In [1]: a = 6
   ...: b = 4
   ...: g = 16
   ...: P = 19

Dabei kennt Alice die Zahlen a, g und P. Bob kennt analog b, g, und P.

Lösung

Alice und Bob Berechnen jeweils ihren Zwischenexponenten und übertragen ihn.

A = g^a mod P
B = g^b mod P

Damit können beide den Schlüssel berechnen:

K = A^b mod P
  = (g^a)^b mod P 
  = g^(a*b) mod P 
  = g^(b*a) mod P 
  = (g^b)^a mod P 
  = B^a mod P 

Das gibt uns (siehe Weak Hybrid Encryption für Code):

In [3]: A = modpow(g, a, P)

In [4]: B = modpow(g, b, P)

In [5]: K = modpow(B, a, P)

In [6]: A, B, K
Out[6]: (7, 5, 7)