18

.NET プラットフォームで使用する楕円曲線暗号の実装を提案できますか?

また、使用したことがあれば、使用すべき推奨カーブを教えていただけますか?

[編集]

@FatCat が述べたように、その実装は .NET Framework 3.5 で利用できますが、それは Windows Vista でのみ利用できます。それを使用する別の方法/ライブラリを提案できますか?

4

5 に答える 5

13

.NET Framework には、楕円曲線暗号化アルゴリズムである Diffie-Hellman が既に含まれています。System.Security.Cryptography.ECDiffieHellmanCngの下を見てください。

于 2009-03-27T17:17:15.310 に答える
11

C#のBouncyCastleライブラリを確認してください。ECDHとECDSAがあります。

于 2009-04-13T18:10:30.907 に答える
3

SecureBlackBoxコンポーネントをご覧ください

于 2009-04-16T15:19:58.963 に答える
3

通常、暗号化に ECC を使用する方法は、「Ephemeral-Static Diffie-Hellman」を使用することです。

次のように動作します。

  • 対象の受信者の公開鍵を (おそらく証明書から) 取得します。これが静的キーです。
  • 一時的な ECDH 鍵ペアを生成します。これはエフェメラル キーペアです。
  • キーを使用して共有対称キーを生成します。
  • 対称キーを使用してデータを暗号化します。
  • 暗号化されたデータを一時キーペアから公開キーと共に送信します。

受信者は、一時公開鍵と自分の静的秘密鍵を使用して対称鍵を再作成し、データを復号化できるようになりました。

詳細については、効率的な暗号化の標準: SEC 1: 楕円曲線暗号化セクション 5.1.3 を参照してください。

于 2009-03-30T06:33:06.940 に答える