基于混合算法的加密与解密的应用研究
2020-07-04毕红棋陈露
毕红棋 陈露
摘 要:网络安全关系着国家安全和主权、社会稳定、民族文化继承和发扬的重要问题。随着信息技术应用的深入,网络安全形势日益严峻,信息系统的数据的加密解密成为常规需求。混合算法是将已有的多种算法进行混合处理,得到新的具有唯一性的算法。采用握手协议的方式,将混合加密与解密算法应用到交付项目中,能从本质上提升信息系统的安全性。
关键词:混合算法;握手协议;网络安全
中图分类号:TP309.7;TP311.1 文献标识码:A 文章编号:2096-4706(2020)03-0145-04
Abstract:Network security is related to national security and sovereignty,social stability,inheritance and development of national culture. With the in-depth application of information technology,the situation of network security is becoming more and more serious,and the encryption and decryption of information system data has become a routine requirement. Hybrid algorithm combines many existing algorithms to get a new unique algorithm. By using handshake protocol and applying hybrid encryption and decryption algorithm to delivery project,the security of information system can be improved essentially.
Keywords:hybrid algorithm;handshake protocol;network security
0 引 言
Visual Studio 2019为程序开发者提供了便捷、高效的开发环境。基于C#的三层架构应用程序能够为大中小型企业提供日常各种类型的应用服务。基于C#的B/S信息系统通常采用Session对象或者Cookie对象来实现数据传输。防止Session冒名顶替、防止Cookie篡改、防止SQL注入是程序开发者高度关注的安全事例。随着网络安全的重要性日益增加,在学校应用平台开发过程和课题研究过程中发现,根据数据的重要性,选择性进行加密,能直接提升数据安全,从而提升平台的安全性。近年来,国内对互联网云计算使用的频率逐渐增加,用户在使用云计算的过程中出现网络安全问题的次数也逐渐增加[1],为了减轻这种安全威胁对网络系统产生的不良影响,豫章师范学院也正在加强本项目的研究。加强数据的加密、解密工作,能大幅度提升项目的安全。由于每个单位、每个部门的需求不同,个性化需求是软件定制开发的特点,档案管理数字化对数据安全的要求更高,在安全、高效的双重驱动下,研究多重加密具有时代意义。本文将结合本项目的研究讨论基于混合算法的加密与解密的应用研究。
1 加密介绍
1.1 数据加密
数据加密就是按照确定的密码算法把敏感的明文数据转变成难以识别的密文数据,通过使用不同的密钥,可用同一加密算法把同一明文加密成不同的密文,来实现数据的保护。数据加密是防止数据被窃取篡改的有效手段,通过加密防止数据被修改,保证数据的完整性,还可以通过加密来实现身份验证,确认数据来自特定的用户[2]。
1.2 常用的加密算法
1.2.1 对称加密
对称加密算法指在加密、解密过程中采用相同密钥的算法,如图1的DES加密解密过程所示。对称加密算法具有高速度、长密钥的特性,应用范围广泛。常见算法有DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES等[3]。
1.2.2 非对称加密
非对称加密算法指在加密、解密过程中采用不同密钥的算法,如图2的RSA加密解密过程所示。非对称加密算法的不足是加解密速度要远远慢于对称加密。常见的非对称加密算法有RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)。
1.2.3 Hash算法
Hash算法是一种单向不可逆算法,是特定长度的唯一Hash值,不能进行解密的逆操作。Hash算法常用在信息的完整性校验、不可逆的登录密码等。常见的Hash算法有MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1。
2 加密与解密重要数据提升信息系统的安全性能
2.1 数据存储与传输存在的风险
数据在传输过程中存在不同种类的风险,不同的风险种类可采用不同的加密解密算法。信息安全面临的威胁有窃听、篡改、伪装、否认等,可采取保持数据的机密性、完整性、认证、不可否认性来处理所受威胁,具体如图3所示。
2.2 核心数据加密的好处
(1)保障数据的安全性。当用户向服务器发送数据请求后,服务器返回相应的数据,在此过程中可能存在數据的篡改、伪装。使用加密技术能够保证数据的安全性,即使数据被非法获取,得到原始数据也并不是一件容易的事情[4]。
(2)保障数据的完整性。信息系统的数据会存储在数据库中,数据库应用程序通常自身存在漏洞,如果不及时升级补丁,就可能造成数据泄漏,例如Oracle数据库;此外数据库管理缺陷可能造成数据泄漏,如SQL Server。因此,加密后的数据存放在数据库中,不仅能保证数据的完整性,还能有效保证数据的安全性。
(3)保护用户隐私。信息系统中通常会包含用户真实姓名、出生日期、身份证号码、联系方式等核心数据。当前很多系统没有对这些数据进行加密,如果发生数据泄漏,信息都是显性的。如果存储在数据库中的信息均被加密,即使信息被非法获取,也不能有效获取用户的隐私信息。
随着对网络安全的日益重视,数据的加密、解密已经成为信息系统的数据存储与展示的必要工作。本文研究的混合加密方法已经在自主研发的公网运行的信息系统中测试两年,通过信息系统等级保护测评二级,包含漏洞扫描、人工注入等操作,未发现高、中危项目。
3 混合加密的应用
3.1 算法选择
加密算法种类较多,选择合适的算法既能提升数据的安全性,又能优化加密解密速度。本文重点研究DES、3DES、MD5、SHA[5]等类型算法,针对不同情况选择不同算法。算法对比情况如表1所示。
3.2 混合加密的概念
(1)多种算法合成单一算法。将现有的加密解密算法通过处理,形成新的算法,即独一无二的新算法,被加密的数据无法在网络上解密[6]。例如本文件运用SHA-1与MD5算法结合,在项目运维过程中,安全效果较好。此种算法所耗用的时间相对较长,因此建议用于登录验证。比較重要的数据可采用DES+3DES算法处理,算法可逆,安全性较高。
(2)多种加密方式共存。信息系统的数据库中通常存在多张数据表,不同的表的关键信息采用不同的加密解密函数、不同的加密解密的密钥,人为增加破解的难度。同一信息系统采用多种加密方式,从本质上提升了数据的安全性,即使数据库被获取,解密数据也是一个复杂工程。
(3)特殊数据加密。信息系统中如果涉及证件照、身份证等信息,可将图像信息转化成二进制数,然后进行可逆加密。
3.3 混合算法的实现
3.3.1 不可逆数据的加密
MD5、SHA-1是常用的加密方法,MD5、SHA-1算法不可逆,但是MD5、SHA-1能在线解密破解,破解网址例如https://www.cmd5.com/,因此存在安全隐患。在项目实现过程中将两种算法进行处理,形成新的加密算法。具体做法是先生成MD5、SHA-1的字符数组:
3.3.2 可逆数据的加密
常见的可逆加密解解密算法有DES、3DES。DES的速度较3DES快,3DES经过三次加密,加密强度较DES强。不同的表建议采用不同的加密方式、如果采用相同的加密方式则建议采用不同的密钥。
(1)加密函数。
随着信息化的发展,早期的信息系统在安全方面较为薄弱,提升信息系统的安全具有时代意义。混合加密是一种加密思路,是初级程序员能实现的加密解密功能,而不是高深的算法,能大幅提升信息系统安全,是值得推广的做法。
3.3.3 测试结果
基于混合算法的站群系统上线两年,系统搭载了45套站群,经过了5家安全企业测试,测试结果良好,具体结果如表2站群系统安全检测结果所示。
4 结 论
随着信息技术的发展,基于B/S的信息系统已经成为主流。随着网络技术的发展,切实维护网络意识形态安全成为必要。根据《中华人民共和国网络安全法》《信息系统等级保护测评》的要求,对信息系统的重要数据进行加密处理已经成为必要工作。加密能加强数据的安全性,但任何一种加密技术都有可能被攻击、破解,因此安全是相对的。采用混合加密技术能够以最小代价取得最高安全价值,信息系统的程序开发者与运维管理者增强安全防范意识,能够有效提升数据信息的安全性。
参考文献:
[1] 王婷婷.面向云计算中隐私保护的混沌混合加密算法研究 [J].信息通信,2019(3):131-133.
[2] 刘友生.基于构件的ASP.NET(C#)网站开发教程 [M].北京:化学工业出版社,2012.
[3] 智勇.一种混合数据加密方案在企业管理系统中的应用 [J].网络安全技术与应用,2019(4):30-33.
[4] 文卫.大数据背景下的中职校园内教学网络安全问题研究 [J].职业,2019(11):28-29.
[5] 徐跃,吴晓刚.一种改进的MD5加密算法及应用 [J].现代计算机(专业版),2018(28):31-33.
[6] 杨怀,宋俊芳,王聪华.浅谈MD5加密算法在网络安全中的应用 [J].网络安全技术与应用,2018(9):40.