暗号技術の基礎と応用
TLS 1.3の暗号スイート TLS_AES_128_GCM_SHA256 が指定するものの組み合わせとして、正しいものはどれか。
- Aデータの暗号化に使うAEAD(AES-128-GCM)と、鍵の導出(HKDF)などに使うハッシュ関数(SHA-256)
- B鍵交換の方式(AES-128)と、サーバの証明書の署名の方式(SHA-256)
- Cデータの暗号化に使うAES-128-GCMと、各レコードに付ける改ざん検出用のHMAC-SHA256
答えと解説を見る
正解:A. データの暗号化に使うAEAD(AES-128-GCM)と、鍵の導出(HKDF)などに使うハッシュ関数(SHA-256)
TLS 1.2の暗号スイート、例えば TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 は、鍵交換(ECDHE)、認証(RSA)、暗号(AES-128-GCM)、ハッシュ関数をまとめて指定していました。TLS 1.3では、鍵交換のグループ(X25519など)と署名の方式は別の拡張で交渉するようになり、暗号スイートはAEADとHKDFのハッシュ関数の組だけを表します。AEADがデータの改ざんの検出も行うので、レコードごとにHMACを付けることはなく、SHA-256はハンドシェイクの内容のハッシュと鍵の導出に使われます。
- A. 正しい。TLS 1.3の暗号スイートは、AEADとハッシュ関数の組だけを表します。
- B. AESは暗号化の方式です。鍵交換のグループと署名の方式は、TLS 1.3では暗号スイートとは別に交渉します。
- C. TLS 1.3はAEADだけを使うので、レコードに別のMACを付けません。SHA-256は鍵の導出などに使われます。