SSL証明書に使用するRSAキーの長さはどのくらいですか?


95

私はCSRを作成している最中ですが、RSA鍵に最適な長さは間違いありません。

もちろん、384はおそらく弱すぎ、16384はおそらく遅すぎます。

証明書の有効期間に応じて、使用する必要があるキーの長さにコンセンサスはありますか?

編集:ほとんどの人と同様に、私は自分の鍵を適度に強くしたいと思っています。NSAが2019年に私の鍵を破る可能性があることは心配していません。通常のビジネス(eコマースサイトなど)を計画している場合のベストプラクティスを知りたいだけです。

回答:


102

2020以降、RSAキーは2048ビットにする必要があります。

1024ビット

  • 1024ビットのRSA証明書は廃止されており、ブラウザでは受け入れられません。
  • Firefoxは、2014年に1024ビットのRSA証明書の受け入れを停止しました。
  • 認証局は、2014年以前に1024ビットのRSA証明書の配信を停止しました。GlobalSignまたはComodoの通知を参照してください。
  • 1024ビットのキーは、小さなデータセンター(数千のCPUまたは数百のGPU、おそらく数か月以内)を前提としてクラックされる可能性があるため、廃止されました。多くのように見えるかもしれませんが、それは大規模な組織や政府の手の届く範囲にありました。

2048ビット

  • 現在、2048ビットのRSA証明書が受け入れられています。
  • CAによって提供され、ソフトウェアによって使用されるデフォルトのベースライン。
  • 最終的にもひび割れます。いつかはわかりませんが、数十年かかる可能性があります。
  • サイズを2倍にすると、クラックするために何桁もの計算能力が必要になります。RSA 2048が1024と比較してどれほど強力かについては、質問を参照してください。

4096ビット

  • 4096ビットのRSA証明書は次のステップです
  • 広く利用可能でサポートされています。暗号化を含め、すべての主要なCAは2048ビットと4096ビットの両方のRSAを提供できます。
  • 計算コストは​​、キーサイズに比例しません。4096は2048の2倍の速度ではなく、処理速度が10倍遅くなる可能性があります。パフォーマンスへの影響を考慮せずに、証明書を4096ビットに盲目的にアップグレードしないでください
  • 「ウェブ」は、4096ビットのハードウェアコストに耐えられないため、2048ビットの証明書にほとんど残っています。膨大なトラフィックとハードウェアフットプリントを持つGoogle、CloudFlare、NetFlixなどの大規模な俳優を検討してください。

3072ビット

  • 3072ビットは事ではありません。4096ビットに直接ジャンプします。
  • 3072ビットの暗号化を行うことは完全に可能ですが、それを正式に実装、サポート、宣伝するソフトウェアはありません。
  • 歴史的に、4096の追加の計算コストが理想的でないユースケース用に3072を起動する試みが2010〜2015年頃にありました。消えていきましたが、3072(より速い)のメリットを広げている古い記事がまだ残っています。

追加

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

13
違い(「256ビットは永久に機能する」と「1024ビットはもう駄目」)は、対称アルゴリズムと非対称アルゴリズムの違いと、それぞれで使用される鍵の種類によるものです。任意の「同等のセキュリティレベル」では、対称と非対称のキーの長さの非常に異なる生の数値が表示されます。
Ti Strga 2014

1
2015年9月の時点で、業界は2048ビット未満のCSRを受け入れないように動いているようです。以下の回答とComodoのサポート記事を参照してください
angularsen

2
@ anjdreas、2048が最低限であることは事実ですが CAの記事からのポイントの引用には十分注意します。
Pacerier

RSA Labsのリンクは404になりました
ジョクル2016年

1
注:11年後に、最新の推奨事項と参照を使用して、回答を完全に書き直しました。ここの上のコメントは以前のリビジョンについてコメントしていました。
user5994461

12

多くのお客様がNIST暗号規格への準拠を必要としているので、私はNIST Special Publication 800‑57、Recommendation for Key Management Part 1、 §5.6のガイダンスを使用します。ほとんどのアプリケーションは、112 "ビット"のセキュリティに適しているため、対称暗号のトリプルDES(または128ビットAESまでの小さなバンプ)およびRSAの2048ビットキーに対応します。大まかな等価性については、表2を参照してください。

妥当かどうかにかかわらず、NISTの出版物を紹介することができると、顧客はセキュリティについて気分を良くすることができます(質問をしたい場合)。


この回答で言及されている記事は、キー管理の推奨事項:パート1:全般(改訂3)に改訂されています。現在のリビジョンは2012年7月
AaA 2013年

NISTページが削除され、次のメッセージに置き換えられたことがわかります。「政府の資金不足により、csrc.nist.govおよび関連するすべてのオンライン活動は、追って通知があるまで利用できなくなります。」
wu-lee

キーの長さに関する推奨事項を比較するこのページがありますkeylength.com/en/compare
wu-lee

10

認証局はサイズが2048ビット未満のcsrに署名しないため、2048ビットになるcsrを生成する必要があります。


6
[引用が必要]
CodesInChaos 2013年

2
ソース- answers.ssl.com/877/... -私たちは、おそらく今後数年間で、これらを切り替えますのでAffirmtrust /トレンドマイクロのようないくつかのCAは、すでに4096ビットの根を埋め込む
ヨギ

私はコモドを試したところ、2048ビット未満しか受け入れません
Angularsen 2015

7

マイクロソフトは来年の8月に、サーバー2003/2008、Win7などにパッチを展開する予定です。これには、最低1024ビットのRSAキーを使用する必要があります。だから、あなたはそれをあなたの「最低限の」標準にすることを始めるべきかもしれません。


6

Webサイトで使用されるSSL証明書の場合、Thawte.com Webサイトからのこのテキスト(2014年7月22日現在)は重要です。

証明機関/ブラウザー(CA / B)フォーラムによって設定された業界標準では、2014年1月1日以降に発行された証明書は、少なくとも2048ビットのキーの長さである必要があります。


Mouais、Facebookは256キー長のままです=> b3.ms/XmWn0e1BMYOk
Thomas Decaux

FacebookがRSAを使用していないことを明確にするために、ECDHE_ECDSAを使用しているため、キーの長さが短くなっています。
Michael

5

私はいくつかの新しいSSL証明書を作成する必要がありましたが、あいまいであるか古くなっているように思われるため、上記の回答には満足できず、少し掘り下げました。結論として、選択された答えは正解です。「2048ビットのキー...長いと意味がありません」

ビット長を4096に増やすと、サーバーに(既存の負荷に応じて)潜在的に意味のある負荷が追加され、基本的に重要でないセキュリティアップグレードが提供されます

2048ビットよりも長いキーが必要な状況で、長いビット長は必要ない場合は、新しいアルゴリズムが必要です。


1

4096はRSAには問題ないと思います

このリンクをチェック

SHA-1署名の終わりは新しいものではありませんが、Googleはクロムのプロセスを加速しています。今後数週間で、SSL証明書を確認する必要があります。

これは役に立ちます


1
英語のリンクも投稿していただけませんか?私のドイツ語はかなり弱いです。
Wai Ha Lee

デジュロ、RSA鍵の長さは、1024、2048、または3072ビットのみです(PKCS#1 2.2およびFIPS 186-4に準拠)。
aprelev 2016

Flameは、攻撃者がより大きいモジュラスではなくハッシュを攻撃することを示しました。SHA-1を使用している場合は、ハッシュと係数が同等のセキュリティを提供するため、1024ビットの係数も使用できます。1024ビットモジュラスは、より大きな4096モジュラスよりも高速な動作を実現します。
jww '20年

0

4
ではない正確に。短期(10年以上)の推奨値は3072です。RSA15360は長期(30年から50年)用であり、秘密鍵を長期間にわたって秘密にしておくことができる場合にのみ意味があります。
HenrickHellström
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.