摘要:随着计算机网络以及通信技术的飞速发展,信息安全成了现代社会急需解决的重要问题之一,而密码技术则是保证网络安全和信息保密的核心和关键。WHIRLPOOL和Threefish算法分别作为杂凑算法和分组密码算中典型的代表,广泛应用于保密通信之中。
本文主要研究了常用的分组密码算法Threefish以及杂凑算法WHIRLPOOL,对其加解密过程、密钥扩展过程、杂凑过程等进行了详细的分析。结合分组密码常用的五种工作模式利用C++语言设计并实现了一种实用的密码系统,该系统支持由用户输入短口令生成加解密时所需的长密钥,并能够对任意类型、任意长度的文件进行加解密操作。最后,通过实例测试证明了所实现的密码系统具有正确性和有效性。
关键词:密码学;Threefish;WHIRLPOOL;工作模式;C++
目录
摘要
Abstract
1-绪论-1
1.1-研究背景及意义-1
1.2-国内外研究现状-2
1.3-本文工作-4
2-背景知识-5
2.1-密码学-5
2.2-杂凑算法-6
2.3-对称加密算法-8
2.4-工作模式-9
2.5-实现工具-13
3-算法分析-14
3.1-WHIRLPOOL算法分析-14
3.2-Threefish算法分析-19
3.3-本章小结-22
4-算法实现-24
4.1-总体设计-24
4.1.1-系统功能-24
4.1.2-系统流程图-25
4.2-WHIRLPOOL算法实现-25
4.3-Threefish算法实现-27
4.4-工作模式引入-28
5-实现结果与测试-31
5.1-软件使用-31
5.2-功能测试-31
5.3-性能测试-33
6-结论-35
参 考 文 献-36
致 谢-38