web-dev-qa-db-ja.com

2つのパーティ間でRSA公開鍵を安全に交換する方法は?

インターネットを介して2者間でRSA公開鍵を安全に交換する方法

14
Predator

自分に信頼できるキーを取得します。最も簡単な2つのオプションは、SSL証明書($ 50 .. $ 100)とGPGキー(無料)です。

送信するデータをその鍵で暗号化または署名します。 SSLを使用すると、https経由でデータを提供できるだけでなく、署名することもできます。 GPGを使用する場合は、キーに対する十分な信頼を構築する必要があります。これにより、受信側は、それがあなたであり、詐欺師ではないと確信できます。

別のオプションは、SSHサーバーへの公開鍵を作成し、それを公開して、そこからデータをSCPで許可することです。カタツムリのメールでSSHキーの指紋を送信するか、Skype /電話で口頭で伝えます。詐欺師は、あなたの鍵、既知のドメイン名のサーバー、およびあなたの電話/ Skype/SIP連絡先を偽造する必要があります。これは、そのような試みを阻止するのに十分難しいはずです。

9
9000

いくつかの簡単なオプションがあります。

  1. キーまたはその他のデータをインターネット上の任意の場所に置き、SHA-256またはその他の適切なハッシュを介してそのフィンガープリントを計算し、フィンガープリントを帯域外で相手と通信します:電話、SMS、またはおそらく電子メールを介して他の誰かが電子メールを傍受することについてあまり心配していません。

  2. 両方の信頼できるサードパーティに、キーまたはその他のデータの保証を依頼します。これは、鍵のPGP署名(従来のweb-of-trust)、またはX.509証明書の鍵のCA署名を介して、あるいはSSLサイトで鍵のフィンガープリントを提供することによって可能です。 CAルートを使用する場合、展開されたブラウザーは暗黙的に数百のCAを信頼し、両方が実際に信頼しているどちらを信頼するかを特定または指定することは難しいことに注意してください。高度なセキュリティが必要な場合は、これを参照して詳細を確認してください。 CAがハッキングされる可能性はどれくらいありますか?どのデフォルトの信頼されたルート証明書を削除する必要がありますか? "。

もちろん、好みは、それがどの種類のキーであるか、誰に送信するか、どのように使用するか、脅威がどのように見えるか、保護するために何を使用しているかなどに依存します。

9
nealmcb

メール、フォーラムの午後、本当に好きな方法で。アイデアは誰でも公開鍵を知ることができ、それは重要ではないということです。

編集:これは、他の人が読めない暗号化されたメッセージを送信できるようにすることを前提としています。公開鍵を非公開にしようとするのではなく(送信者を保証する必要があるため、RSAを使用しない方がよい)、送信者を保証したい場合は、 sign を使用してメッセージを取得します。独自のRSAキー。

または、失敗した場合は、RSA公開鍵などを使用して鍵を暗号化し、復号化できるようにします。

1
Sysyphus