资源描述:
《信息系统安全DES加密解密算法实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、信息系统安全课程设计DES加密与解密算法实现摘要DES算法属于迭代的分组密码算法,把64位的明文输入块变为64位的密文输出块。,它是使用一个56位的密钥以及附加的8位奇偶校验位,利用16个循环、异或、置换、代换和移位操作四种基本运算产生最大64位的分组大小。关键词:DES,分组密码算法,密钥,基本运算1系统的功能(1)对字符吊加密和解密可以对输入的字符串使用特定的密钥进行DES加密生成密文,并可以对DES加密后的密文利用原始密钥实现解密功能还原成原始明文。(2)对文件进行加密和解密在实现了DES对字符串的加解密功能后继续实现对文件的加解密功能。可以通过浏览选择文件进行D
2、ES加密生成加密文件,并可以对DES加密后的文件利用原始密钥实现解密述原成原始文件。2用户使用方法(1)对字符串加密操作:在明文对应的输入框以及密钥对应的输入框中输入所需加密的明文和密钥,点击加密按钮即可在密文的文本框屮显示密文。如需对明文和密钥进行扩充只需在扩充框中输入所需扩充的位数即可。(2)对字符串解密操作:对需输入密文的文木框进行输入后,输入密钥再点击解密按钮,即可在原文文本框屮显示明文。(3)对文件加密操作:点击游览,选择所需加密的文件(推荐选择文本文件)后,输入密钥点击文件加密按钮即可。(4)对文件解密操作:点击游览,选择已经进行过加密的文件,输入其所对应的
3、密钥后点击文件解密按钮即可。3开发的算法与关键技术3.1主流程图DES的每个分组是64位,即明文和密钥都是64位(密钥实际是56位,每字节第八位为校验位)。DES算法流程图的主流程图如23.2IP转换:其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位,其置换规则见下表:5&50,42,34,26,1&10,2,60,52,44,36,2&20,12,4,62,54,46,3&30,22,14,6,64,56,4&40,32,24,16,&57,49,41,33,25,17,9,1,59,51,43,35,27,19,11,3,61
4、,53,45,37,29,21,13,5,63,55,47,39,31,23,15,7,即将输入的第58位换到第一位,第50位换到第2位,…・,依此类推,最后一位是原來的第7位。L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位,例:设置换前的输入值为D1D2D3D64,则经过初始置换后的结果为:L0=D58D50...D8;RO二D57D49...D7。经过16次迭代运算后。得到L16、R16,将此作为输入,进行逆置换,即得到密文输出。逆置换正好是初始置换的逆运算。例如,第1位经过初始置换后,处于第40位,而通过逆置换,又将第40位换回到第1位,其
5、逆置换规则如下表所示:40,&4&16,56,24,64,32,39,7,47,15,55,23,63,31,38,6,46,14,54,22,62,30,37,5,45,13,53,21,61,29,36,4,44,12,52,20,60,2&35,3,43,11,51,19,59,27,34,2,42,10,50,18,5826,33,1,41,9,49,17,57,25,放大换位表如下图:32,1,2,3,4,5,4,5,6,7,&9,&9,10,11,12,13,12,13,14,15,16,17,16,17,18,19,20,21,20,21,22,23,24
6、,25,24,25,26,27,2&29,2&29,30,31,32,1,单纯换位表如下图:16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25,3.3选择函数:在f(Ri,Ki)算法描述图中,S1,S2...S8为选择函数,其功能是把48bit数据变为32bit数据。下面给出选择函数Si(i二1,28)的功能表:选择函数SiS1:14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7,0,15,7,4,14,2,13,1,10,6
7、,12,11,9,5,3,8,4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0,15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13,S2:15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10,3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5,0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15,12,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9,S3:10,0,9,14,6,3,15,5,1,13