RSA暗号化がキー交換で一般的になったのはなぜですか?


16

これは簡単な質問です。暗号化またはその歴史についてはあまり知りませんが、RSAの一般的な用途は、対称キーを暗号化してキー交換を行い、より長いメッセージを送信することです(たとえば、iMessageの説明はこちら)。これは、Diffie-Hellman鍵交換(より古い(そして、私にとってはより簡単なように思える))の目的ではありませんか?ウィキペディアを見ると、両者とも特許を取得しているため、選択の責任はありませんでした。

明確にするために、公開鍵暗号化が可能であることが理論的に重要であるかどうかは尋ねません。私はそれがなぜ鍵交換を行うための実際の標準的な方法になったのかを尋ねています。(暗号作成者ではない人にとって、DHは実装しやすいように見えますが、使用されるグループの詳細にも結び付けられていません。)



3
RSAは、DHなどの対話型キー交換プロトコルが不可能な場合(片方向リンクしか利用できない場合、または往復通信時間が長すぎる場合など)の安全なキー送信にも使用できます。暗号化された電子メールなどの使用例では、メッセージを送信したいときに受信者のコンピューターがインターネットに接続されていない可能性があり、対話型の鍵交換に参加できないため、このようなアプローチが有利です。
ケビンキャスカート

それが鍵交換で一般的になった理由を尋ねていますか、それとも一般的にですか?
OrangeDog

@KevinCathcart DHは必ずしもインタラクティブではありません。送信者は、使い捨てのキーペアを作成し、メッセージに沿って公開キーを送信できます。このアプローチは、ECIES / DLIESおよびElGamal暗号化の基礎です。これにはわずかなサイズのオーバーヘッドがあります(1024ビットキーの場合は128バイト)。
CodesInChaos

@CodesInChaos:ただし、どちらもキー交換アルゴリズムではありません。鍵交換から本格的な公開鍵暗号方式に移行した後、裏返しの難しい問題を選択しても、送信者が受信者の公開鍵のコピーを持っていることを確認するなどの運用上の懸念には影響しません。「なぜ単純な鍵交換アルゴリズムではなく、公開鍵暗号を使用して鍵を交換することが多いのか」という質問を理解しました。明らかに、基本的に任意の公開鍵アルゴリズムを使用して、非対話型チャネルで共有秘密を確立できます。
ケビンキャスカート

回答:


14

強力な技術的理由はありません。RSAと同様に、Diffie-Hellman(適切な署名付き)を使用することもできます。

なぜRSAなのか?私の知る限り、非技術的な歴史的理由が支配的でした。RSAは特許を取得しており、その背後にはRSAのマーケティングと提唱を行っている会社がありました。また、優れたライブラリがあり、RSAは開発者にとってわかりやすく使い慣れていました。これらの理由から、RSAが選択されました。RSAが一般的な選択肢になった後は、慣性のためにそのままでした。

最近では、Diffie-Hellmanの使用が増加した主な原因は、Diffie-Hellmanを使用することで簡単に達成できますが、RSAの方が遅い完全な前方秘匿性への欲求です。

ちなみに、これはDiffie-Hellmanキー交換であり、Diffie-Hellman秘密共有ではありません。秘密の共有はまったく別のものです。


2
特許はRSA を避けるべき理由だと思いましたか?
user1686

特許権者の行動に依存する@grawity; 1世代前、技術特許の所有者は、スマートフォン戦争や大規模な中小企業の特許のトローリング中に発生した程度に、大規模かつ長期にわたる訴訟を通じて集団的に不名誉なことをしていませんでした。
ダン・ニーリー

10

Diffie–Hellmanには、認証という重要な機能がありません。誰かと秘密を共有していることは知っていますが、それが受信者なのか中間者なのかはわかりません。RSAを使用すると、公開鍵を保管する少数の信頼できる当事者がいる場合があります。銀行に接続する場合は、コンピューターに信頼できる当事者の公開鍵が既にあるため、信頼できる当事者(Verisignなど)に銀行の公開鍵を要求できます。したがって、銀行と秘密を共有していることを知っています。

Diffie–Hellmanを使用すると、銀行でシークレットを作成するときに、実際に銀行の秘密キーを作成する中間者(MITM)でシークレットを作成できます。もう一方は(通信全体を読み取ることができる間)見えないままにします。


もちろん、認証にRSAを使用し、次にDHキー交換を使用できます。
OrangeDog

4
次のような秘密鍵と公開鍵のペアを作成できます:。それを適切に使用することで、あなたが誰と話しているかを知ることができます。あなたができないことは、事実が第三者にあなたに言ったことを第三者に証明した後です。Diffie-Hellmanは、私が知る限り、署名を生成する機能がありません。pk=gskmodp
カスペルド

@kasperd:これには多くの賛成票があることに驚いています。
ルイ

1
認証に長期Diffie-Hellmanキーを使用するか(プロトコルの例についてはCurveCPを参照)、またはDHをDSA / Schnorr / ElGamal署名と組み合わせることができます(多くの基礎数学をDHと共有します)。 RSA暗号化とRSA署名を組み合わせます。
CodesInChaos

-2

前述のRSAアルゴリズムはDiffie–Hellmanよりも優れているわけではありません。後者は認証を欠いているだけでなく、アルゴリズムは両方とも離散対数を見つけるのが困難であるため、セキュリティ的にはどちらもかなり似ています。


2
貢献していただきありがとうございます。ただし、あなたが言うことはすべて他の答えですでにカバーされています。既存の回答を複製するのではなく、まだ適切な回答がない質問に回答することをお勧めします。また、RSAは、離散対数そのものではなく、ファクタリング問題の難易度(および厳密に言えばRSA問題)に依存します、Diffie-Hellman 、より古典的な離散ログベースのシステムです(厳密には、DDHの仮定に依存します) )。
DW

-3

これには見落とせない暗い側面があります。
RSAがNSAによって選択されたという事実。
NSAは、RSAに供給したEliptic Curve cyhperにバックドアを設置しました。
http://www.intelligence-world.org/nsa-infiltrated-rsa-security-more-deeply-than-thought-study/


1
この答えは一貫性がありません。楕円曲線暗号はRSAとは異なります。したがって、楕円曲線暗号のバックドアがRSAを危険にさらすことはありません。この答えは間違っています-そのようなダークサイドはありません。
DW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.