web-dev-qa-db-ja.com

Authenticated Encryptionで機密性が低下しないのはなぜですか?

最近、 別の質問はここ は、認証された暗号化について考えるようになりました。

私の理解では、AEは完全な暗号文を復号化することなく、鍵が復号化に有効かどうかをチェックすることを可能にします。代わりに、MACのみがチェックされ、かなり高速になります。

私の質問は:

  1. AEのこの機能により、ブルートフォース攻撃に対して脆弱になりますか?
  2. これはなぜ重要ではないのですか? (TLS 1.3はAEADモードのみを許可するため、そうすることはできません。)
  3. キーのブルートフォーシングに対するAEスキームの防御は、秘密のキーとプレーンテキストまたは暗号化テキスト(EtM/E&M/MtEに依存)を組み合わせたハッシュ関数の強度まで低下しますか?

代わりに、MACのみがチェックされ、かなり高速になります。

そうではありません。実際、それは逆の場合もあります。

  • 暗号化してからMACの場合、MACキーをテストするには、暗号文全体をMACする必要があります。
  • 暗号化とMACの両方、MACとMACの両方の暗号化では、暗号化テキスト全体を復号化してから、プレーンテキスト全体をMAC化して、暗号化+ MACキーをテストする必要があります。
  • 暗号文が既知の平文ブロックで始まっている場合は、最初のブロックを復号化し、一致するかどうかを確認して暗号化キーをテストできます

これらのオプションの中で最速は3番目であり、暗号はそれに対しても安全である必要があります。 128ビット以上のキーの場合、推測できるのは 多すぎる可能性 です(キーがランダムである限り)。

3
AndrolGenhald