SPN構造(エスピーエヌこうぞう、Substitution Permutation Network Structure)は、ブロック暗号の構成法の一種である。ほとんどのブロック暗号は、実装コストを効率化するため、同一のラウンド関数を繰り返す「繰返し暗号」になっていて、SPN構造は繰返し暗号の代表的な構成法である。他の構成としてはFeistel構造がある。

概要

編集

 (Substitution)  (Permutation) SPNSPN()

AESHierocryptSerpentSPN

利点

編集
  • 1ラウンドあたりブロック全体が撹拌される
  • Feistel構造と同様の撹拌性を得るためのラウンド数が少なくてすむ

欠点

編集
  • 解析実績が少ない
  • ラウンド関数の選択の自由度が小さい
  • 暗号化と復号のルーチンを共通化できない。コードサイズ・回路規模などの点で、ソフトウェアおよびハードウェアでの実装性がFeistel構造に対して劣る

関連項目

編集