基于Misty1算法的加密软件(VC)的实现
摘 要
随着计算机网络及通信技术的飞速发展,信息安全成了信息社会急需解决的最重要的问题之一,密码技术是保证信息安全的核心技术。本文用C++语言开发了一个基于Misty1算法的加密软件,该软件能对文件进行加密和解密。在具体实现时,首先分析了Misty1算法的基本结构,设计出相应的实施方法,正确实现了该算法,其次,设计了一个图形用户界面,最后对软件进行了测试,验证了实现方法的正确性。http://www.16sheji8.cn/
关键词:MISTY1;加密;解密
Design and Implementation of Encryption Software (VC) Based on MISTY1
Abstract
With the rapid development of computer networks technology and communication technology, Information security has become one of the most important problems urgent to resolve in information society, Cryptographic technology is the core technology to guarantee information security. In this paper, a encryption software based on Misty1 algorithm is developed by using C plus-plus language. It can encrypt and decrypt a file. During the process of implementation, the basic structure of the algorithm is analyzed first and the counterpart method is designed, secondly, a GUI is designed, finally, the software is tested, the result shows that method of implementation is right.
Key words: MISTY1;Encryption;Decryption
目 录
论文总页数:28页
1 引言 1
1.1 课题背景 1http://www.16sheji8.cn/
1.2 国内外研究现状 1
1.3 本课题研究的意义 1
1.4 实验环境和预期结果 3
2 MISTY1算法的描述及用于文件加密的意义 3
2.1 MISTY1算法的描述和应用 3
2.1.1 密钥产生部分 3
2.1.2 数据随机化部分 4
2.2 MISTY1应用于文件加密的意义 13
3 加密软件的设计和实现 14
3.1 软件功能分析 14
3.2 MISTY1的C++实现 14
3.3 加密软件的界面设计 16
3.4 加密软件的界面编码 17
3.4.1 文件加密 17
3.4.2 文件解密 19
3.4.3 文件浏览/保存 20
3.4.4 文件加密/解密演示 21
4 软件测试 21http://www.16sheji8.cn/
结 论 26
参考文献 26
致 谢 27
声 明 28
1 引言
1.1 课题背景
随着我国对计算机的普及,计算机和通信技术已经在我国得到了广泛发展及应用,从而使我们对信息的安全存储、安全处理和安全传输的需要越来越迫切。特别在INTERNET的应用中,以及个人通信、个人电子身份证、办公自动化,电子邮件、电子自动转帐支付系统和自动零售业务网的建立与实现,信息的安全保护问题已经显得十分突出,而能够解决这一问题的一个有效手段就是使用现代密码技术。http://www.16sheji8.cn/
密码的应用可以一直追述到很久以前,但对于现代密码学,是始于20世纪70年代“密码学新方向”的发表和美国数据加密标准DES的颁布实施。从此揭开了商用密码研究的序幕。实用密码体制的研究基本上沿着两个方向进行,即以RSA为代表的公开密钥密码体制和以DES为代表的秘密密钥分组密码体制。分组密码具有速度快、易于标准化和便于软硬件实现等特点,通常是信息与网络安全中实现数据加密、数字签名、认证及密钥管理的核心体制,它在计算机通信和信息系统安全领域有着最广泛的应用。
1.2 国内外研究现状
目前分组密码所采用的整体结构可分为Feistel结构(例如CAST—256、DEAL、DFC、E2等)、SP网络(例如Safer+、Serpent等)及其他密码结构(例如Frog和HPC)。加解密相似是Feistel型密码的一个实现优点,但它在密码的扩散似乎有些慢,例如需要两轮才能改变输入的每一个比特。SP的网络结构非常清晰,S一般被称为混淆层,主要起混淆作用。P一般被称为扩散层,主要起扩散作用。在明确S和P的某些密码指标后,设计者能估计SP型密码抵抗差分密码分析和线性密码分析的能力。SP网络和Feistel网络相比,可以得到更快速的扩散,但是SP密码的加/解密通常不相似。
目前对分组密码安全的讨论主要包括差分密码分析、线性密码分析和强力攻击等。从理论上讲,差分密码分析和线性密码分析是目前攻击分组密码的最有效的方法,而从实际上说,强力攻击是攻击分组密码最可靠的方法。到目前为止,已有大量文献讨论各种分组密码的安全性,同时推出了譬如截断差分分析、非线性密码分析及插值攻击等多种分析方法。自AES候选算法公布以后,国内外许多专家学者都致力于候选算法的安全分析,预计将会推出一些新的攻击方法,这无疑将进一步推动分组密码的发展。http://www.16sheji8.cn/
1.3 本课题研究的意义
(1)加密算法标准化的需要
标准化是工业社会的一个基本概念,它意味着生产规模化、降低成本、方便维修和更换为了实现非相关团体之间的保密通信,加密体制的标准化是必要的。分组密码由于其固有特点,已经成为标准化进程的首选体制。1977年美国国家标准局颁布了联邦信息处理标准DES 以保护非机密信息在存储和传输过程中免受未经授权的篡改或泄露。此后,DES作为数据加密的工业标准,得到了IBM等计算机制造厂商的大力支持,并陆续被其他组织机构所采.1979年美国银行家协会批准使用DES,1980年DES又成为美国标准化协会(ANSI)的标准。继而,DES也受到国际标准化组织(ISO)的关注,l984年成立的数据加密技术委员会SC20准备在DES基础上制定数据加密的国际标准。尽管DES是目前世界上使用最广和最成功的算法,但是它的56比特密钥对今天的许多安全应用已太短了,三重DES作为临时的解决方案已出现在许多像银行这类安全性高的应用中,但是对于某些应用,它的加密速度太慢。最根本的是,当同一密钥加密大量数据时,DES的64比特分组长度为密码攻击开了方便之门。正是由于这些原因1997年4 月15日美国国家标准技术研究所(NIST)发起征集AE5(Advanced Encryption Standard)算法的活动,并专门成立了AES工作组,目的是为了确定一个非保密的、公开披露的、全球免费使用的分组密码算法,用于保护下一世纪政府的敏感信息,也希望AES能够成为秘密和公开部门的数据加密标准。http://www.16sheji8.cn/