计算机科学

首页 > 计算机科学

混淆与扩散

在密码学当中,混淆(confusion)与扩散(diffusion)是设计密码学算法的两种主要方法。这样的定义最早出现在克劳德·香农1945年的论文《密码学的数学理论》当中[1]

在克劳德·香农的定义之中,混淆主要是用来使密文和对称式加密方法中密钥的关系变得尽可能的复杂;而扩散则主要是用来使用明文和密文关的关系变得尽可能的复杂,明文中任何一点小更动都会使得密文有很大的差异。 混乱用于掩盖明文与密文之间的关系。这可以挫败通过研究密文以获取冗余度和统计模式的企图。做到这一点最容易的方法是“代替”。 扩散通过将明文冗余度分散到密文中使之分散开来。即将单个明文或密钥位的影响尽可能扩大到更多的密文中去。产生扩散最简单的方法是换位(置换)。

参考文献

  • Claude E. Shannon, "Communication Theory of Secrecy Systems", Bell System Technical Journal, vol.28-4, page 656--715, 1949. 1
  • Wade Trappe and Lawrence C. Washington, Introduction to Cryptography with Coding Theory. Second edition. Pearson Prentice Hall, 2006.
  • William Stallings, Cryptography and Network Security, 3rd Edition, Prentice Hall, 2003
  1. ^ Model Based Inference in the Life Sciences: A Primer on Evidence. Springer New York. 2008-01-01: 51–82. ISBN 9780387740737. doi:10.1007/978-0-387-74075-1_3 (英语). 

上一篇:Canonical XML
下一篇:爱丽丝与鲍伯
相关推荐