4

DHキー交換を実行する方法を示すサンプルコードを調べてきました。超シンプルでわかりました。しかし、私が知らないのは、pとqの適切なサイズがどうあるべきかということです。サンプルでは、​​数は非常に少ないです。しかし、実際には、もっと大きくする必要があると思います。どれくらい大きいですか?16〜22桁のプライムで十分でしょうか?

4

2 に答える 2

5

DH の安全なグループを選択するには、十分な大きさの素数を使用するだけでは不十分です。素数は再利用できるため、事前計算されたパラメータを再利用できます。たとえば、 IETF RFC 3526には、多数のグループが提案されています。セクション 8 では、提案された各グループのセキュリティを推定します。

また、Diffie-Hellman の実装では通常、小さな q を避けることに注意してください (残念ながら SquareRootOfTwentyThree によって提案されています)。その理由は、サブグループの閉じ込め攻撃です。上記の IETF グループは、そのような攻撃を回避するために選択されています。

于 2013-02-04T13:44:43.490 に答える
2

qがpを法とするサブグループのサイズを意味すると仮定すると、2013年のいくつかの安全な値は、前者の場合は224ビット、後者の場合は2048ビットです。10進数で、それぞれ68と309を意味します。

暗号化キーの長さに関するさまざまな意見を確認するための優れたWebサイトは(冗談ではありません)http://www.keylength.comです。あなたの場合、離散対数に関するものがあなたに関連しています。

于 2013-01-30T22:10:43.250 に答える