3

すべての JWE は、認証済み暗号化と関連データ (AEAD) アルゴリズムを使用して暗号化されます。IV および暗号化されたコンテンツ暗号化キー(CEK) を追加認証データ (AAD)に含めたくない理由はありますか? なんらかの形で JWE を脆弱にするのでしょうか?

編集:私はこれを調査し続け、 RFC 5116 セクション 2.1に従って見つけました

ナンスはアルゴリズムに対して内部的に認証され、AD 入力に含める必要はありません。アプリケーションにとって便利な場合は、ノンスを P または A に含めることができます。

秘密鍵 K は、他の入力 (N、P、および A) のいずれにも含めてはなりません。(この制限は、これらの入力の値をチェックして、キーに一致する部分文字列が含まれていないことを確認する必要があることを意味するのではなく、キーをこれらの入力に明示的にコピーしてはならないことを意味します。)

残りの質問は、暗号化されたコンテンツ キーがランダムな値と同等であると考えることです。それを aad に含めても問題ありませんか? ここでも完全に便宜上です。それとも情報漏えいの可能性があるのでしょうか?

4

1 に答える 1

2

IV または Encrypted Content Encryption Key (CEK) を完全に保護する必要はありません。いずれかを変更すると、AAD に含まれているかどうかに関係なく、復号化が失敗します。ただし、オラクル攻撃のタイミングを回避するには、CEK の復号化、MAC の検証 (AES-CBC + HMAC-SHA2 アルゴリズムの場合)、およびコンテンツの復号化を含む復号化プロセス全体を実行する必要があります。

IV または CEK を AAD に含めて整合性を保護する必要はありませんが、そこに含めても害はありますか? 質問で指摘したように、RFC 5116 は、AAD に IV を含めても問題ないことを示していますが、AADを含む他のアルゴリズム入力にCEK を含めてはなりません。ただし、暗号化アルゴリズムが安全であると仮定すると、暗号化された CEK はランダム データと計算上区別できないため、AAD にそれを含めても問題ありません。

于 2015-04-08T13:06:38.877 に答える