Diffie-Hellman 鍵交換とは、他人に知られても構わない情報を 2 人が交換するだけで、 共通の秘密鍵を作り出す方法です。 IPSec では Diffie-Hellman 鍵交換を改良した方法を使用しています。 Diffie-Hellman 鍵交換の手順 [1] Alice は Bob に 2 つの素数 P と G を送信する。 [2] Alice は乱数 A を用意する。 [3] Bob は乱数 B を用意する。 [4] Alice は Bob に G^A mod P の結果を送信する。 [5] Bob は Alice に G^B mod P の結果を送信する。 [6] Alice は (G^B mod P)^A mod P を計算する。 [7] Bob は (G^A mod P)^B mod P を計算する。 Java で実装する ここでは Diffie-Hellman 鍵交