ブロック暗号

2023-11-25 (土) 18:56:26

ブロック暗号 とは

  • 平文をブロックと呼ばれる一定のサイズ(64bit/128bit)に分割して、ブロックごとに暗号処理を行う方式
  • ストリーム暗号より処理が遅い

ブロック暗号の暗号モード

  • ブロック暗号を繰り返し行う方法のこと
  • XOR演算を使う暗号モードでは、最初の暗号ブロックの生成に初期ベクトル(IV)を使う

秘匿モード

ECB

  • Electronic Code Book
  • 電子符号表モード
  • 暗号ブロックの生成方法:暗号化(平文ブロック)
  • 暗号ブロック間の関連性がない
    • 直前の暗号ブロックを使って暗号ブロックの演算をしていない(XOR演算しない)
  • 非推奨

CBC

  • Cipher Block Chaining
  • 暗号ブロック連鎖モード
  • 暗号ブロックの生成方法:
    • 1回目:暗号化(IV XOR 平文ブロック)
    • 2回目以降:暗号化(直前の暗号ブロック XOR 平文ブロック)

CFB

  • Cipher Feedback
  • 暗号フィードバックモード
  • 暗号ブロックの生成方法:
    • 1回目:暗号化(IV) XOR 平文ブロック
    • 2回目以降:暗号化(直前の暗号ブロック) XOR 平文ブロック

OFB

  • Output Feedback
  • 出力フィードバックモード
  • 暗号ブロックの生成方法:
    • 1回目:暗号化(IV) XOR 平文ブロック ※CFBと同じ
    • 2回目以降:暗号化(直前の暗号化したIV) XOR 平文ブロック

CTR

  • Counter
  • カウンタモード
  • 暗号ブロックの生成方法:
    • 1回目:暗号化(カウンタ) XOR 平文ブロック
    • 2回目以降:暗号化(直前のカウンタ+1) XOR 平文ブロック

認証付き秘匿モード

  • CTRに認証の機能を追加したモード

CCM

  • Counter with CBC-MAC
  • 認証機能:CBC-MAC

GCM

  • Galios Counter Mode
  • 認証機能:Galoisモード

ブロック暗号の用途

共通鍵暗号方式

メッセージ認証コード

関連用語