暗号スイート
暗号スイート とは何ですか?
暗号スイート鍵交換、認証、データ暗号化、完全性のアルゴリズム群を 1 つの名前にまとめた組み合わせで、TLS などのプロトコルによりセッションごとに選ばれる。
暗号スイートは、セッション保護のためにセキュリティプロトコルが利用するアルゴリズムの組み合わせを指定します。TLS 1.2(RFC 5246)では、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 のようなスイートが、鍵交換に ECDHE、認証に RSA、暗号化に AES-128-GCM、PRF に SHA-256 を選びます。TLS 1.3(RFC 8446)は、鍵交換と署名を AEAD とは別に交渉することでモデルを簡素化しました。残るスイートはわずか 5 種類のみ(例:TLS_AES_128_GCM_SHA256、TLS_CHACHA20_POLY1305_SHA256)で、そのすべてが前方秘匿性(forward secrecy)を備えています。
レガシースイートが危険な理由。 脆弱なスイートは、10 年にわたる実用的な攻撃を招いてきました。RC4 は、そのキーストリームの偏りによって平文の復元が可能になったことを受け、RFC 7465 によって TLS での使用が正式に禁止されました。3DES やその他の 64 ビットブロック暗号は、Sweet32 バースデー攻撃(CVE-2016-2183)に対して脆弱で、同一の鍵の下でおよそ 32 GB の通信量に達すると平文が復元されてしまいます。輸出規制グレードの暗号は FREAK(CVE-2015-0204)や Logjam を招き、接続を解読可能な 512 ビットの RSA や Diffie-Hellman へとダウングレードしました。匿名(aDH/aECDH)スイートは認証を完全に省くため、能動的な傍受を誘発します。
ハードニング。 RC4、3DES、輸出規制向けおよび匿名のスイート、静的 RSA 鍵交換を無効化し、ECDHE を用いた AEAD スイート(または TLS 1.3 の既定値)を優先してください。Qualys SSL Labs、testssl.sh といったツールや、Mozilla、NIST SP 800-52r2、ドイツの BSI による構成プロファイルが、安全な既定値を体系化しています。
flowchart TD A[Client Hello:<br/>提示された暗号スイート] --> B[サーバーが 1 つのスイートを選択] B --> C[鍵交換<br/>ECDHE / RSA] C --> D[認証<br/>証明書の署名] D --> E[データ暗号化<br/>AES-GCM / ChaCha20] E --> F[完全性<br/>AEAD タグ / HMAC] F --> G[セキュアなセッション]
● 例
- 01
TLS_AES_256_GCM_SHA384 は TLS 1.3 で推奨される暗号スイートのひとつ。
- 02
TLS_RSA_WITH_3DES_EDE_CBC_SHA を提供し続けているレガシーシステムは廃止すべき。
● よくある質問
暗号スイート とは何ですか?
鍵交換、認証、データ暗号化、完全性のアルゴリズム群を 1 つの名前にまとめた組み合わせで、TLS などのプロトコルによりセッションごとに選ばれる。 サイバーセキュリティの 暗号 カテゴリに属します。
暗号スイート とはどういう意味ですか?
鍵交換、認証、データ暗号化、完全性のアルゴリズム群を 1 つの名前にまとめた組み合わせで、TLS などのプロトコルによりセッションごとに選ばれる。
暗号スイート からどのように防御しますか?
暗号スイート に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。