- 关 键 词:
3.IDEA算法的具体描述
3.1密钥生成
用户输入128位长密钥
Key = k1k2k3…k127k128
IDEA总共进行8轮迭代操作,每轮需要6个子密钥,另外还需要4个额外子密钥,所以总共需要52个子密钥,这个52个子密钥都是从用户输入的128位密钥中扩展出来的.
首先把输入的Key分成8个16位的子密钥, 1~6号子密钥供第一轮加密使用,7~8号子密钥供第二轮使用,然后把这个128位密钥循环左移25位,这样Key = k26k27k28…k24k25
把新生成的Key在分成8个16位的子密钥,1~4号子密钥供第二轮加密使用(前面已经提供了两个)5~8号子密钥供第三轮加密使用 ,到此我们已经得到了16个子密钥,如此继续,当循环左移了5次之后已经生成了48个子密钥,还有四个额外的子密钥需要生成,再次把Key循环左移25位,选取划分出来的8个16位子密钥的前4个作为那4个额外的加密密钥.供加密使用的52个子密钥生成完毕.
K[0]
K[1]
K[2]
K[3]
K[4]
K[5]
…
K[48]
K[49]
K[50]
K[51]
第一轮
…
额外密钥 URl收藏 http://www.qqread.com/soft-engineering/u620599011.html
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 软件设计的十二个最佳步骤 (35次浏览)
- 深入理解敏捷开发的常见九大误区 (20次浏览)
- 从瀑布模型、极限编程到敏捷开发 (13次浏览)
- CMMI证书背后的6大怪相 (11次浏览)
- 程序员如何保证代码正确 (3次浏览)
- 敏捷软件开发模型:SCRUM (2次浏览)
- 配置管理变更的关键路径 (1次浏览)
- XFire:轻松简单地开发Web Services (0次浏览)
- Windows或开源:企业级OS之争趋势如何? (0次浏览)
- 浅析软件项目进度管理中的积习流弊 (0次浏览)



