Diffie-Hellman鍵交換入門
「傍受されている可能性のある通信ネットワークだけを使い、鍵を安全に相手に届ける」
大きな素数 p, 小さな適当な整数 xを用意しておく。これは公開して構わない。
Aliceが秘密の a を, 2 以上 p未満の整数からランダムに選ぶ。
Aliceは E = x^a mod pを計算する。その結果の EをBobに送る。
Bobが秘密の bを, 2以上 p未満の整数からランダムに選ぶ。
Bobは F = x^b mod pを計算する。その結果の FをAliceに送る。
Aliceは、Bobから受け取った Fと、自分の手元にある aを使って、 Ga = F^a mode pを計算する。
Bobは、Aliceから受け取った Eと、自分の手元にある bを使って、 Gb = E^b mod pを計算する。
https://scrapbox.io/files/64a791feaaeab1001c3934cb.png