メインコンテンツまでスキップ

付録 B. AEAD アルゴリズム解析 (AEAD Algorithm Analysis)

本セクションでは、AEAD_AES_128_GCM、AEAD_AES_128_CCM、および AEAD_AES_256_GCM の AEAD アルゴリズム制限を導出するために使用される解析を文書化します。

以下の記号が使用されます:

t: 認証タグのサイズ(ビット単位)。これらの暗号では、t は 128 です。

n: ブロック関数のサイズ(ビット単位)。これらの暗号では、n は 128 です。

k: 鍵のサイズ(ビット単位)。AEAD_AES_128_GCM および AEAD_AES_128_CCM では 128、AEAD_AES_256_GCM では 256 です。

l: 各パケットのブロック数。

q: エンドポイントが作成および保護する真正なパケットの数。この値は、鍵を更新する前に保護できるパケット数の境界です。

v: エンドポイントが受け入れる偽造パケットの数。この値は、鍵を更新する前にエンドポイントが拒否できる偽造パケット数の境界です。

o: 攻撃者が行うオフライン理想暗号クエリの量。

B.1. AEAD_AES_128_GCM および AEAD_AES_256_GCM の使用制限の解析

[GCM-MU] は、TLS 1.3 および QUIC で使用される AEAD_AES_128_GCM および AEAD_AES_256_GCM の具体的な境界を指定します。本セクションでは、いくつかの簡略化された仮定を使用してこの解析を文書化します。

B.1.1. 機密性制限 (Confidentiality Limit)

機密性について、[GCM-MU] の定理 (4.3) は、ノンスを繰り返さない単一ユーザーの場合、攻撃者が実際の AEAD アルゴリズムとランダム AEAD アルゴリズムの間で得る識別優位性の支配項が次のとおりであることを確立します:

2 * (q * l)^2 / 2^n

2^-57 の目標優位性の場合、これは次の関係になります:

q <= 2^35 / l

したがって、2^11 バイトより大きいパケットを送信しないエンドポイントは、攻撃者が 2^-57 の目標よりも大きな優位性を得ることなく、単一の接続で 2^28 を超えるパケットを保護できません。2^16 までのパケットサイズを許可するエンドポイントの制限は、代わりに 2^23 です。

B.1.2. 完全性制限 (Integrity Limit)

完全性について、[GCM-MU] の定理 (4.3) は、攻撃者がパケットの偽造に成功する優位性が次を超えないことを確立します:

(1 / 2^(8 * n)) + ((2 * v) / 2^(2 * n))
+ ((2 * o * v) / 2^(k + n)) + (n * (v + (v * l)) / 2^k)

目標は、この優位性を 2^-57 に制限することです。AEAD_AES_128_GCM の場合、この不等式の第4項が他を支配するため、結果に大きな影響を与えずに他を削除できます。これにより、次の近似が生成されます:

v <= 2^64 / l

2^11 バイトより大きいパケットから保護を解除しようとしないエンドポイントは、最大 2^57 パケットから保護を解除しようとすることができます。処理されたパケットのサイズを制限しないエンドポイントは、最大 2^52 パケットから保護を解除しようとすることができます。

AEAD_AES_256_GCM の場合、同じ項が支配的ですが、k の値が大きいため、次の近似が生成されます:

v <= 2^192 / l

これは AEAD_AES_128_GCM の制限よりかなり大きいです。ただし、本文書では、いずれかの制限が許容できるほど大きいため、両方の関数に同じ制限を適用することを推奨しています。

B.2. AEAD_AES_128_CCM の使用制限の解析

TLS [TLS13] および [AEBounds] は、AEAD_AES_128_CCM の使用制限を指定していません。ただし、QUIC で使用される AEAD には、機密性と完全性の両方が維持されることを保証する使用制限が必要です。本セクションではその解析を文書化します。

[CCM-ANALYSIS] がこの解析の基礎として使用されます。機密性について、定理2は、攻撃者が理想的な疑似ランダム順列 (PRP) に対して次を超えない識別優位性を得ることを確立します:

(2l * q)^2 / 2^n

定理1の完全性制限は、同じ数のメッセージに対して攻撃者に厳密に高い優位性を提供します。機密性優位性と完全性優位性の目標が同じであるため、定理1のみを考慮する必要があります。

定理1は、攻撃者が理想的な PRP に対して次を超えない優位性を得ることを確立します:

v / 2^t + (2l * (v + q))^2 / 2^n

"t" と "n" はどちらも 128 であるため、最初の項は2番目の項に比べて無視できるため、結果に大きな影響を与えずにその項を削除できます。

これにより、機密性のみの定理によって生成される制限と同じ制限で、暗号化と復号化の両方の試行を組み合わせる関係が生成されます。2^-57 の目標優位性の場合、これは次のようになります:

v + q <= 2^34.5 / l

"q = v" を設定することにより、機密性と完全性の両方の制限の値を生成できます。したがって、パケットを 2^11 バイトに制限するエンドポイントは、機密性と完全性の両方の制限が 2^26.5 パケットです。パケットサイズを制限しないエンドポイントの制限は 2^21.5 です。


貢献者 (Contributors)

IETF QUIC ワーキンググループは、多くの人々から多大な支援を受けました。以下の方々が本文書に実質的な貢献をしました:

(貢献者リストは省略)

著者の連絡先 (Authors' Addresses)

Martin Thomson (editor)
Mozilla
Email: [email protected]

Sean Turner (editor)
sn3rd
Email: [email protected]