1. ホーム
  2. ssl

[解決済み] SSL証明書に使用するRSA鍵の長さを教えてください。

2022-11-28 05:05:38

質問

CSR を作成しているところですが、RSA 鍵の長さとして間違いなく最適なのはどれでしょうか。

もちろん、384は弱すぎるでしょうし、16384は遅すぎるでしょう。

証明書の有効期間によって、使用すべき鍵の長さについてコンセンサスがありますか?

編集する。 ほとんどの人と同じように、私は自分の鍵が適度に強いことを望んでいます。2019年にNSAが私のキーを破るかもしれないことを心配しているわけではありません。ただ、通常のビジネス(たとえばeコマースサイト)を行う予定がある場合、何がベストプラクティスなのかを知りたいだけなのです。

どのように解決するのですか?

2020年現在、RSA鍵は2048ビットであるべきです。

1024ビット

  • 1024 ビットの RSA 証明書は時代遅れで、ブラウザーに受け入れられません。
  • Firefox は、2014 年に 1024 ビットの RSA 証明書の受け付けを停止しました。
  • 認証局は2014年以前に1024ビットRSA証明書の配信を停止しています。参照 グローバルサイン または コモド の通知で確認できます。
  • 1024 ビットのキーは、小さなデータセンター (数千の CPU または数百の GPU、おそらく数か月) でクラックできたため、非推奨とされました。これは膨大に見えるかもしれませんが、大規模な組織や政府にとっては十分に手の届く範囲でした。

2048 ビット

  • 2048ビットのRSA証明書は、現在使用されている標準的なものです。
  • CA によって提供され、ソフトウェアによって使用されるデフォルトのベースライン。
  • 最終的にはクラックされるでしょう。いつかは分かりませんが、数十年かかるかもしれません。
  • サイズを2倍にすると、クラックするために何桁も多くの計算能力が必要になります。質問を参照 RSA2048は1024に比べてどれだけ強いのですか? .

4096 ビット

  • 4096 ビットの RSA 証明書は次のステップに進みます。
  • 広く利用可能でサポートされています。すべての主要な CA は、以下を含む 2048 ビットと 4096 ビットの RSA の両方を提供することができます。 暗号化しよう .
  • 計算コストは鍵のサイズと線形ではありません。4096 は 2048 の 2 倍ではなく、10 倍程度処理速度が遅くなります。 パフォーマンスへの影響を考慮せず、やみくもに証明書を 4096 ビットにアップグレードしないでください。 .
  • ウェブは、4096 ビットのハードウェア コストに耐えられないため、大部分は 2048 ビットの証明書にとどまっています。Google、CloudFlare、NetFlix のような、膨大なトラフィックとハードウェア フットプリントを持つ大規模なアクターを考えてみてください。

3072 ビット

  • 3072 ビットは存在しない。4096 ビットに直接ジャンプします。
  • 3072 ビットの暗号を行うことは完全に可能です。ただ、実際に実装し、サポートし、公式に宣伝しているソフトウェアがありません。
  • 歴史的には、2010 年から 2015 年にかけて、4096 の余分な計算コストが理想的でないユースケース向けに 3072 を開始する試みがありました。これは消えてしまいましたが、(より高速な) 3072 のメリットを広める古い記事がまだ残っています。

追加

  • RSAは1977年に初めて公開され、50年近く経った今でも強力です。ただ、より高速なコンピュータに追いつくために、ビット数を増やす必要があります。
  • 楕円曲線に基づく公開鍵暗号方式は他にもあり、ECDSA(1992)を参照してください。
  • ユーザーの容量と攻撃者の容量には大きな隔たりがあります。Web サーバーやモバイル クライアントは 1 つの (低電力) CPU を持っています。攻撃者はデータセンター全体を持つことができます。参考までに、新しく構築された AWS データセンターは、約 60,000 サーバーをホストしています。
  • 数百万台のコンピューターが一生かかっても推測できないような計算を、たった 1 台のモバイル デバイスが数秒のうちに計算できることは、信じられないことです。