1

私は ECC 暗号化プログラミングの初心者です。共有鍵交換に ECDH を使用することと、共有鍵を受信者の公開鍵で暗号化して ECIES を使用することの違いを説明してくれる人はいますか? 秘密鍵が秘密にされている限り、ECIES も安全な鍵交換を提供してくれると思います。ありがとうございました。

4

1 に答える 1

4

ECDH は、共有秘密導出プロトコルです。2 つの当事者が、自身の「秘密鍵」とパートナーの「公開鍵」に関する知識を使用して、共有秘密を生成します。通常、秘密鍵は鍵のネゴシエーションに使用される乱数であり、その後破棄されます。

ECIES は、ECDH と同じ方式を使用して「共有秘密鍵」を生成します。「秘密鍵」の 1 つが乱数であり、対応する公開鍵がメッセージ自体に含まれています。これは、共有秘密は、他の秘密鍵を持つ人だけが導出できることを意味します。メッセージ自体は、共有シークレットをキーとして使用して、AES などの他のスキームで暗号化されます。

鍵のネゴシエーションを行っている場合は、ECDH が最適です。(必須の注意: もちろん、本番システム用に独自の暗号化を展開するべきではなく、TLS を使用するだけです。)

于 2015-08-31T19:54:14.357 に答える