APP下载

基于3DES算法的个人计算机加密系统的设计与实现

2018-10-20刘源源

数码设计 2018年12期
关键词:明文加密算法密钥

刘源源

摘要:DES算法是目前常用的加密算法之一,3DES算法做为DES -个更安全的变形,具有更广阔的应用范围。本文系统分析了3DES算法的实现方式,采用vc++设计了一个3DES加密系统,实现对文件和数据的加密保護。

关键词:3DES算法;加密系统;vc++

中图分类号:TP309.7

文献标识码:A

文章编号:1672 - 9129( 2018) 12 - 0116 - 02

引言:随着信息社会的到来,人们在享受信息资源所带来的巨大利益的同时,也面临着信息安全的严峻考验。以信息的保密性、完整性和不可否认性为代表的信息安全问题已成为信息化发展中日益突出的问题。密码技术是保证数据安全的关键,它的核心是密码算法。DES算法是常用的加密算法之一,目前被广泛应用于金融、工业、通讯等领域[1]。3DES是DES的一个更安全的变形,以DES为基本模块,通过组合分组方法设计出更为安全的分组加密算法。

1 3DES加密算法的基本原理

DES算法为密码体制中的对称密码体制,是一种对二元数据进行加密的算法。明文数据分组长度为64位,密文分组长度也是64位,使用的密钥为64位,有效密钥长度为56位,有8位用于奇偶校验。加密的过程是先对64位明文分组进行初始置换,在左、右两部分分别经过16轮迭代后,再进行异或运算与变换,最后进行逆置换得出密文[2]。此算法解密时的过程和加密时使用相同的密钥,但密钥的使用顺序正好相反。

3DES算法是三重数据加密算法,是对每个数据块应用三次DES加密算法。3DES算法的密钥长度增加到112位或168位,可以有效克服DES面临的穷举搜索,增强了抗差分分析和线性分析能力[3]。

2 3DES加密系统设计

DES的加密分为子密钥生成和迭代加密两个主要部分。子密钥生成将一个64位的密钥变换为16个48位的子密钥,用于后续加密运算。迭代加密通过对明文的置换、拆分、迭代异或运算、变换等方式实现DES加密。3DES通过利用两个密钥进行三次DES加密来实现。

2.1 子密钥的生成函数。将64位的密钥K,经过PC-1选择置换,去掉奇偶校验位。密钥K(56位)按左右分成28位的C0和D0,参照循环左移变换表对C0和D0进行循环左移变换LSi(i为当前循环次数,循环16次),将循环左移结果进行PC-2置换,得到16个48位子密钥[4]。

Ci= LSi(PC-1(K)(左边28位)),Di=LSi(PC-1(K)(右边28位))

Ki(48位)= PC-2(CiDi(56位))

2.2 加密迭代函数。将64位明文M进行初始IP置换后,分成左右32位的两个部分L0和R0,将Li和Ri按照以下公式(图2)进行16次迭代Li=Ri-1,Ri=Li-1①P(S(E(Ri-1)①Ki)),其中扩展置换E将Ri从32位扩展到48位,S盒子转换将异或运算结果从48位转换为32位。将运算后的结果LnRn左右交换位置后进行IP-1置换,得到64位密文结果。

2.3 3DES加密解密函数。设Ek()和Dk()分别代表DES算法的加密和解密过程,ki代表DES算法使用的密钥,M代表明文,C代表密文,则3DES算法的过程可表示为:

C= Ek3(Dk2(Ek1(M))),M= Dkl(Ek2(Dk3(C))),密钥k1、k3可采用相同值。

3 3DES加密系统的实现

本文采用vc++编制了3DES加密系统,采用两个密钥进行加密。系统将密钥1字符和密钥2字符用二进制位信息表示,存储在结构体变量Miyaol_hit和Miyao2_hit中,从明文文件中读出明文字符流存储在字符型数组MingwenBuf中。首先使用密钥1对MingwenBuf进行Endes函数加密,再使用密钥2对结果进行Endes函数解密,最后使用密钥1对结果进行Endes函数加密,结果存储在密文字符流数组MiwenBuf中,转为密文文件作为输出结果。

结论:本文介绍了3DES算法的基本原理,分析并设计了用vc+实现3DES加密解密的核心算法和流程,制作了个人计算机加密系统,通过测试验证该加密系统实现了对个人计算机文件和数据的加密保护,体现出3DES算法良好的加密效果。

参考文献:

[1]邓慧澜,钱潇.DES算法分析及应用[J].中国水运,2017,12:101 - 102.

[2]卢开澄.计算机密码学计算机网络中的数据保密与安全(第2版).北京:清华大学出版社,1998年7月.

[3]张福泰等.密码学教程.武汉:武汉大学出版社,2006年.

[4]温泉,赵红敏,郝晓东,沈海鸿.一种高速高安全性的DES算法设计[J].微电子学与计算机,2014,12:164 - 167.

猜你喜欢

明文加密算法密钥
幻中邂逅之金色密钥
幻中邂逅之金色密钥
BitLocker密钥恢复二三事
奇怪的处罚
教育云平台的敏感信息保护技术研究
一种改进的加密算法在空调群控系统中的研究与实现
基于Jave的AES加密算法的实现
奇怪的处罚
奇怪的处罚