SPN(substitution-permutation network缩写)
SPN(substitution-permutation network)代换-置换网络是一类特殊的迭带密码。代换-置换网络的轮函数包括三个变换:代换、置换、密钥混合。 Shannon建议交替使用代换和置换两种方法,即他称之为混乱(confusion)和扩散(diffusion)的过程,破坏对密码系统进行的各种统计分析。 扩散,就是将明文的统计特性迅速散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,即密文中每一位受明文中多位影响;将密钥的每位数字尽可能扩散到更多个密文数字中去,以防止对密钥进行逐段破译。根据扩散原则,分组密码应设计成明文的每个比特与密钥的每个比特对密文的每个比特都产生影响。 混乱的目的在于使明文和密文之间的统计关系变得尽可能复杂。使用复杂的非线形代换算法可得预期的混淆效果. 扩散和混乱成功地实现了分组密码的本质属性,因而成为设计现代分组密码的基础。这种思想在现代密码体制的设计中十分重要,深刻影响着数据加密标准DES、高级数据加密标准AES的设计。