web-dev-qa-db-ja.com

新しいPGPキー:RSA / RSAまたはDSA / Elgamal?

MacでGPGキーチェーンアクセスを使用して新しいPGPキーを作成したいと思っていました。オプションの1つはキータイプを選択することでした:

  1. RSAおよびRSA
  2. DSAとElgamal
  3. RSA(署名のみ)
  4. DSA(署名のみ)

このスーパーユーザーの質問 が見つかりましたが、古くなっている可能性があります。 NSAはRSAに侵入し、キー生成アルゴリズムを弱めたことがわかっているため、RSAキーは安全性が低いようです。これが4096ビットのRSAキーに大きな影響を与えるかどうかはわかりません。 DSAを選択すると、3072ビットのキーしか使用できないことがわかります。DSA/ Elgamalはあまり一般的ではないようですが、この日付に関するメッセージは2009年までさかのぼります。

  • 何を使うべきですか?
  • 何が問題なの?
25
SPRBRN

NSAがRSAに侵入し、鍵生成アルゴリズムを弱めたことが知られているため

あなたがそれを知っているなら、あなたは間違っていることを知っています。まったく関係のない2つのことを混乱させています。

RSAは、非対称暗号化とデジタル署名に使用できます。 A PRNGはどちらも実行できません。APRNGは予測できないビットの無限のストリームを生成します。これはRSAが実行しないものです。2つは本当に異なります。

今、混乱の原因は何ですか?それは2つあります:

  • 非対称暗号化アルゴリズムはkeysを使用します。これは、ある時点でランダムに生成する必要があります。鍵生成アルゴリズムは、通常、暗号的に強力なPRNG(so potentially Dual_EC_DRBG、or just any any PRNG)によって提供されるランダムビットのストリームを処理する必要があります。
  • Dual_EC_DRBGを実装して顧客に提供した1つのソフトウェアベンダーは RSA Security でした。その会社は「RSA」と呼ばれます。それは、Rivest、Shamir、Adlemanによって設立されたためです。3人の研究者が非対称アルゴリズムRSAを発明し、まったく同じ理由でそのように命名しました。基本的に、Rivestは暗号アルゴリズムを発明したときはRivestと呼ばれ、会社を設立したときはRivestと呼ばれています。とにかく、彼らは20年前に会社を売却しました。

要するに、非対称アルゴリズムであるRSAは決して「バックドア」されないということです。バックドアできるのはPRNGはキーペア生成アルゴリズムの特定の実装で使用されます。しかし、Dual_EC_DRBGを使用してElGamalキーペアを生成する場合、等しくホースされます。したがって、貧しい、弱いPRNGはありませんRSAよりもElGamalを好む理由。

(ニッピックする場合は逆になります。Dual_EC_DRBGで既知のバックドアを使用すると、Dual_EC_DRBGを使用してRSAキーよりもElGamalキーを生成した方が簡単です。ただし、一般的に、キー生成ツールが意図的に使用している場合弱いPRNGの場合は、キーのタイプに関係なく、失うことになります。)

キーの長さはどうですか?奇妙な偶然により、RSA、DSA、およびElGamalのキーが同じサイズであっても、漠然と同様の強さを提供することがあります(これは、異なる種類の数学オブジェクトに依存しているため、これは純粋な運です)。 1024ビットのRSA/DSA/ElGamalキーは現在、暗号解読機能を回避していますが、それらはseem地球ベースのテクノロジーの手の届く範囲にあります(専用のビルドに数億または数十億ドルを費やした場合)マシンで、1つのキーを破るのに6か月かかるかどうかは問題ではありません)。 2048ビットのRSA/DSA/ElGamal鍵は、予測可能なテクノロジーで実行できるものを超えています。 2048ビットを超えるサイズのキーは、赤いスポーツカーを購入して女の子を呼び込むのと同じです。

あなたの特定のケースについて:

  • 「署名のみ」オプションは、署名にのみ使用できる鍵を生成します。たとえば、暗号化された電子メールには使用できません。暗号化にキーを使用する場合は、最初の2つのオプションのいずれかを使用する必要があります。

  • 以前は、RSAは(米国で)特許を取得していたため、一部の実装ではDSAとElGamalのみがサポートされていました。 2000年に特許が失効して以来、PGPを適切に実装すれば、問題なく処理できます。

  • DSA署名は、RSA署名より少し短いです。 ElGamalベースの鍵交換は、RSAベースの鍵交換よりも数バイト多く使用します。ここでは数十バイトしか話していない。そのような最適化は、使用することを決定した場合に発生する損失によって小さくなります  あなたの男らしさを主張する特大の鍵。

37
Thomas Pornin