コンテンツへスキップ
uencoder

CTR (Counter Mode)

CTR モードはブロック暗号をストリーム暗号に変える: 増分カウンタを暗号化してキーストリームを生成し、平文と XOR する。並列処理とランダムアクセスを支えるが、完全性は提供しない。

目的

ストリーム暗号としてパディング不要で動作しつつ、並列暗号化とランダムアクセスでの復号を可能にする。

メカニズム

暗号化: C_i = P_i ⊕ E_K(nonce || counter_i)。カウンタは初期値から増分し、nonce は一意でなければならない。ブロックは独立なので並列化できる。認証されないため、MAC(例: CCM)と併用するか GCM を使う。

ユースケース

  • AES-CTR のストリーム暗号化
  • 暗号データへのランダムアクセス(ディスクなど)
  • パラレルな暗号化処理
  • AES-GCM の基盤

例

  • 入力
    nonce + counter 0,1,2...
    Output
    keystream blocks

    Parallelizable

よくあるエラー

Nonce reuse replays the keystream
Use a unique nonce per message

関連用語

関連ツール

References