コンテンツへスキップ
uencoder

Block Cipher

ブロック暗号は固定長のブロック(例: 128 ビット)を暗号化・復号する対称暗号であり、任意長のデータを扱うには運用モードが必要である。

目的

固定ブロックに対する安全な変換を提供し、証明可能な安全な暗号の構成要素となる。

メカニズム

暗号化関数 E(K, P) は n ビットの平文ブロックを n ビットの暗号文ブロックへ写像する全単射である。鍵スケジュールがラウンド鍵を導出し、複数ラウンドで代替と置換を交互に適用する(SPN または Feistel 構造)。可変長データには ECB/CBC/CTR/GCM などのモードが必要である。

ユースケース

  • AES ベースの暗号化基盤
  • ディスク暗号化(ブロック単位)
  • MAC 構成(CMAC など)
  • 疑似ランダム関数の構成

例

  • 入力
    AES-128 block
    Output
    16-byte ciphertext block

    A mode is required for multiple blocks

よくあるエラー

Encrypting multiple blocks directly with the raw block cipher (i.e., ECB mode)
Always use a secure mode (GCM, or CBC with an IV)

関連用語

関連ツール

References