标题 | 浅谈电子商务中的加密技术 |
范文 | 杨嘉雄
摘? 要: 加密技术在电子商务中的应用极为广泛,是电子商务安全的重要组成部分,对其深入研究具有重要意义。文章对常用的加密技术,如对称加密、非对称加密和Hash加密的基本原理、主要特点、算法的优化等以及研究现状进行综述,旨在进一步提高电子商务的安全性。 关键词: 对称加密算法; 非对称加密算法; Hash加密算法; 电子商务 中图分类号:TP309.7? ? ? ? ? 文献标识码:A? ? ?文章编号:1006-8228(2021)04-38-04 Abstract: Encryption technology is widely used in e-commerce, and it is an important part of e-commerce security. This paper reviews the basic principles, main features, algorithm optimization and research status of common encryption technologies, such as symmetric encryption, asymmetric encryption and Hash encryption, in order to further improve the security of e-commerce. Key words: symmetric encryption; asymmetric encryption; Hash encryption; e-commerce 0 引言 数据加密技术用来保障网络交易过程中信息的安全性,从而使跨平台、跨地域的电子商务安全、协调、便捷、高效地发展。在电子商务具体交易過程中,仍然存在对信息的窃听、篡改、假冒和恶意破坏等问题[1]。针对这些问题,电子商务交易与认证过程需要保证其所传递信息的完整性、保密性、不可抵赖性以及交易者身份的真实性。 常见应用于电子商务的加密技术包括对称加密、非对称加密和Hash加密三种[2]。此外,三者混合加密以及基于深度学习的加密算法,在加密研究领域也占有一席之地。下面对相关研究进行综述简评。 1 对称加密 对称加密技术是一种采用单个密钥的加密方法。一个密钥或可以相互推导的一对密钥,同时用作信息的加密和解密,因此对称加密又称为单密钥加密。 1.1 DES 数据加密标准(Data Encryption Standard,DES)是1977年由IBM公司研究并公开发布的,它的诞生一定程度上为了满足当时商业保密需求。DES的数据分组长度和密文分组长度均为64位;使用的密钥为64位,其中8位为校验位。采用数据补位的方式,数据以八个字节为一组进行加密,解密过程和加密过程类似,但生成密钥的顺序相反[3]。由于使用的密文分组长度只有64bit,因此逻辑运算速度快,算法也相对容易。 随着计算机硬件的不断发展以及破解算法的研究,DES因秘钥过短不足以防御暴力攻击,于1998年被破解。之后针对DES密钥长度较短的问题,提出进行三次DES加密运算的3DES算法,但是当3DES所加密的数据过长时反而导致3DES保密性降低。针对此问题有学者又进行了基于DES/3DES的S盒重构和多重DES优化[4]。刘海峰等[5]还提出基于DES分组与哈希函数的改进方案,改进子密钥使用顺序,进而,增加密钥强度。 上述改进措施主要集中在增强加密算法复杂度上,所付出的代价是巨大的。此外,由于DES技术需要密钥数量大,并且还存在密钥存储安全性的问题,因此电子商务单独应用DES作为加密技术的SET交易协议和SSL协议已不常见,更多的是与其他加密算法配合使用,文献[6]提出了一种DES与RSA结合加密的方法,用DES加密明文数据,用RSA加密DES密钥,各取所长提高加密效率和安全性。 1.2 AES 高级加密标准(Advanced Encryption Standard,AES) 于 2001 年底公开发布[3],很快代替 DES 标准成为对称加密技术的主要方式。AES又称为Rijndael算法,其特点在于多“轮”加密,通过多次反复的行列异或变化得到最终的密文。每一轮加密都涉及到字节替代、列混淆、轮密钥加和行移位四种操作。此外分组过程又划分为OFB、CFB,ECB、CBC四种加密模式。电子商务交易过程中的AES加密主要采用的是CBC模式,其适合较长报文,且不易受主动攻击。 AES算法常见的有对加密过程S盒的改进[7];文献[8]引入伪随机数算法,一次一密的加密提高了AES的安全性。尽管AES在速度和安全性上较DES有了明显改进,然而在差分错误攻击上表现不佳,需约20条左右的错误密文就能成功破解AES加密算法[9]。并且,由于其没有实质上解决密钥安全性以及数字签名认证问题,因此对称加密算法不适合电子商务交易一对多的信息传输场景。据此,文献[10]利用在电子商务环境下常见的数字信封技术,并基于FPGA实现和RSA技术结合的混合加密,较大程度上提高了混合算法的安全性和效率。 2 非对称加密 非对称密码算法使用一对密钥(公钥和私钥)对信息进行加密和解密。非对称性体现在:若使用公钥对数据进行加密,则只能通过接收端所持的私钥才能进行解密;而如果用私钥加密,则只能使用对应的公钥解密。由于非对称加密公钥和私钥分开,密钥不需要频繁传递,也就降低了密钥数量,便于密钥管理。 2.1 RSA算法 RSA是于1977年由Ron Rivest、Adi Shamir和Leonard Adleman三位学者共同提出的。由于世界上还没有可靠的攻击RSA算法的方式,是目前使用最广泛的非对称加密算法。RSA算法原理本质上是对两个大素数进行因式分解,当素数足够长时(一般取1024位模长),几乎无法在可计算时间内求解,因此RSA的可靠性很高[11]。此外,RSA还支持数字签名技术,可以满足电子商务交易环境中对用户身份认证的需求。 然而,当素数越来越长、模数越来越大时,加密和解密的时间也随之增大,RSA算法的效率成为其在电子商务领域正常应用的巨大阻碍。周金治等[12]、王海涛等[13]、百君芬[14]根据算法的自身结构,结合素数产生与参数选择对RSA算法进行优化。也有学者[15,16]直接从大整数的分解角度出发,对算法效率和安全性进行优化。 就RSA算法与电子商务数字签名方面,王煜等[17]将明文编码为整数分组,每组再使用私钥加密以提高运行速度。文献[18]讨论了使用RSA的多重数字签名方法,同时引入秘钥中心为用户产生秘钥从而降低证书管理的复杂度,能够更好地适应电子商务环境。 2.2 ECC算法 椭圆曲线算法(Elliptic Curve Cryptography,ECC)于1985 年被VictorMiller和NealKoblitz提出。它对数据加密的安全程度是基于椭圆曲线离散对数问题求解的困难程度[11]。这是一个NP 完全问题,因此很难从加密函数的角度对算法进行破解。ECC特点在于在相同加密强度情况下,其密钥长度要比RSA小很多,因此所需存储空间较小。详见下表: ECC算法存在的问题主要集中在计算效率较低和计算方法较复杂,但由于其适用范围广,安全性更高,成为近年电子商务数据加密领域研究重点。张平等[19]对ECC算法安全性做进一步提高,把改进ECC应用于向前安全的数字签名技术中,提出一种前向安全的椭圆曲线数字签名方案。李雨等[20]比较各数字签名算法优劣,设计选用具有密钥位数短、安全性高、带宽要求低的ECC数字签名算法方案。 此外,将ECC算法和其他算法结合进行混合加密成为近年主流。文献[21]提出了基于Logistic混沌方程和ECC的混合加密算法,利用混沌映射技术增强ECC的安全性能。刘艳等[22]将ECC结合同态加密的方法,與RSA算法混合加密并应用于云端加密。 3 散列函数加密 将明文转化成不可读的密文是对信息的混沌效果。散列函数又称哈希(Hash)函数,其输入域无穷大而输出域有限,是一种单向唯一函数,因此极难通过哈希函数的结果回推其输入数据或使散列发生碰撞。基于以上特点,哈希函数用于信息摘要,由于输出熵较大,因此可以看做具有类似加密的效果。散列加密常用于单向数据加密的环境中。 3.1 MD5 信息-摘要算法(Message-DigestsAlgorithm)以变长的信息作为输入,将其压缩成一个128为的输出[23],在电子商务的数字签名机制中应用广泛。MD算法于90年代初开发,今已发展到第五代。MD5在MD4的基础上增强复杂度,将明文补位后按照512位分块,每一块又划分为16个32位子组,经过4个非线性函数的循环处理后形成4个32位级联得到的128位输出,作为输入信息的摘要[24]。由于输入长度大于输出长度,因此存在不同的输入产生相同输出的可能,故MD散列算法存在碰撞。MD5算法已被王小云教授使用差分攻击的方法得到碰撞。 MD5的算法改进主要集中在对原始消息的填充过程。文献[25]提出了对MD5明文消息进行相乘溢出的预处理改进,比之前的非线性函数更为复杂;在步函数计算增加填充值并采用幂运算,提高发现差分路径的难度。文献[26]将原本512位的消息块扩充至1024位,且每轮结果值的长度相应翻倍,利用雪崩效应测试后证明较好的避免碰撞的出现。此外,文献[27]通过引入一个64位的对称秘钥对hash算法的每一轮都进行加密,以较小的时间代价大大提高函数被暴力破解的风险。 3.2 SHA家族 安全散列算法(Secure Hash Algorithm,SHA)包含多个散列算法,自1993 年FIPS发布SHA-0至今,历经SHA-1、SHA-2(包SHA-256、SHA-512等)、 SHA-3等多次筛选[28]、优化和更新。其中SHA-1和 SHA-256在电子商务的数字摘要环节应用最为广泛。 SHA-1算法以512比特为一组,不足则填补1,所经轮次均与MD5相同,但相较MD5修改了具体的分组处理函数和字节序列部分,最终输出160比特的信息摘要作为算法结果。遗憾的是,SHA-1与2005年被王小云教授发现碰撞,利用SHA-1签名的SSL证书已于2017年不被微软、谷歌等公司旗下的浏览器所支持[28]。SHA-256算法输出的摘要长度为256比特,因此可能组合更多,碰撞概率较小,比前一版本更加安全,如今被广泛应用在SSL中。 常见的提升SHA算法安全性的方式包括扩大分组长度、变换逻辑函数和改进压缩函数等[29]。除了针对算法本身进行改进,对SHA家族的FPGA实现也有大量研究[30,31],旨在提高摘要生成速度和吞吐量,更加适应物联网及时应答环境[32]。此外,近年也有学者研究使用GPU实现SHA-1算法的并行计算[33]并可大幅提升计算速度。 4 总结与展望 本文介绍了对称加密、非对称加密和散列函数加密三种加密技术,分析在电子商务领域中的适用性。 对称算法具有加密速度快的巨大优势,但要求信源信宿双方都持有密钥,涉及密钥存储安全,安全性能低,不适合单独地在电子商务交易环境中承担信息加密任务。非对称加密算法具有安全性能高、支持电子签名的特点,但实现效率较低,算法复杂。对称加密技术的改进近年集中在S盒优化和分组多轮计算两个方面增加密文安全性。非对称加密技术则集中在分组并行计算、改进参数选择、优化算法步骤三个方面。此外,两种加密技术的混合算法综合双方优势,兼顾了效率、存储空间和安全性,在电子商务与网络通信协议场景下有更大的发展空间。 散列函数具有良好的信息混沌性能,用于验证信息的完整性。由于其具有计算效率高,算法简单易于硬件实现的特点,被广泛的应用在电子商务的各个环节。近年主要以降低碰撞概率,增强算法安全性和FPGA实现以提升并发率与吞吐量研究为主。 长远来看,在密钥形式没有质变的情况下,混合加密技术将不断汲取传统加密算法优点并更好地结合其他网络安全技术,成为未来电子商务技术的重要组成部分;散列算法将稳步升级并面向大数据和海量任务,继续对电子商务安全起到不可替代的保障作用。 参考文献(References): [1] 唐雨薇.电子商务中计算机网络安全技术的应用分析[J].技术与市场,2020.27(2):135-136 [2] 吴晓东.密码技术在电子商务安全中的应用[J].信息与电脑,2017.2:224-225 [3] Alanazi H, Zaidan B B, Zaidan A A, et al. New comparative study between DES, 3DES and AES within nine factors[J].arXiv preprint arXiv:1003.4085,2010. [4] 王煜.3DES加密技术的新探讨与改进[J].网络空间安全,2016.7(8):30-32 [5] 刘海峰,朱婧,曹慧.改進DES子密钥使用顺序的算法研究[J].西南大学学报(自然科学版),2017.39(6):135-140 [6] 吴明航.DES和RSA混合加密算法的研究[D].哈尔滨工业大学,2013. [7] Rahnama B, Elci A, Eweoya I. Fine tuning the advanced encryption standard (AES)[C]//Proceedings of the Fifth International Conference on Security of Information and Networks,2012:205-209 [8] 刘海峰,陶建萍.基于改进AES的一次一密加密算法的实现[J].科学技术与工程,2019.19(13):146-150 [9] 孙维东,俞军,沈磊.对称加密算法AES和DES的差分错误分析[J].复旦学报(自然科学版),2013.52(3):297-302 [10] 柴绍杰,张彩珍.AES加密算法的改进及FPGA实现[J].兰州交通大学学报,2020.3:47-53 [11] BhanotR, Hans R. A Review and Comparative Analysis of Various Encryption Algorithms[J].International Journal of Security & Its Applications,2015.9(4):289-306 [12] 周金治,高磊.基于多素数和参数替换的改进RSA算法研究[J].计算机应用研究,2019.36(2):495-498 [13] 王海涛,刘朋辉.一种基于RSA的改进安全算法[J].测控技术,2019.38(10):104-107,112 [14] 白君芬.公钥RSA算法的改进研究与实现[J].工业仪表与自动化装置,2019.1:101-103 [15] 刘新星,邹潇湘,谭建龙.大数因子分解算法综述[J].计算机应用研究,2014.11:3201-3207 [16] 李翊谁,穆雨桐,迟利华,刘杰,孙扬,包为民,龚春叶.数域筛法研究综述[J].计算机应用,2018.38(S1):104-107 [17] 王煜,朱明,夏演.非对称加密算法在身份认证中的应用研究[J].计算机技术与发展,2020.30(1):94-98 [18] 张键红,肖晗,王继林.高效的基于身份RSA多重数字签名[J].小型微型计算机系统,2018.39(9):1978-1981 [19] 张平,栗亚敏.前向安全的椭圆曲线数字签名方案[J].计算机工程与应用,2020.56(1):115-120 [20] 李雨,张俊.基于ECC算法在数字签名中的分析与研究[J].无线互联科技,2019.16(12):110-111 [21] 王尚勇,吴笑峰,胡仕刚等.一种基于Logistic混沌方程和ECC的混合加密算法[J].现代信息科技,2018.2(2):103-104,107 [22] 刘艳,郎显赫,裴少婧.基于ECC与同态加密的加密算法[J].计算机工程与设计,2020,41(05):1243-1247. [23] Rivest R L. The MD4 Message-Digest Algorithm[J].Crypto,1991.537(1):303-311 [24] 张裔智,赵毅,汤小斌.MD5算法研究[J].计算机科学,2008.7:295-297 [25] 任杰麟.MD5加密算法的安全性分析与改进[J].农业图书情报学刊,2017.29(7):39-42 [26] Jake M. Libed,Ariel M. Sison,Rujie P. Medina. Improved MD5 through the extension of 1024 Message Input Block[P]. Machine Learning and Machine Intelligence,2018. [27] Shakya A,Karna N. Enhancing MD5 hash algorithm using symmetric key encryption[C]//the 3rd International Conference,2019. [28] Stevens M,Bursztein E, Karpman P, et al. The First Collision for Full SHA-1[J],2017. [29] 林雅榕,侯整风.对哈希算法SHA-1的分析和改进[J].计算机技术与发展,2006.16(3):124-126 [30] Mestiri H, Kahri F, Bouallegue B, et al. Efficient FPGA Hardware Implementation of Secure Hash Function SHA-2[J]. international journal of computer network & information security,2014. [31] El MoumniS,Fettach M, Tragha A. High throughput implementation of SHA3 hash algorithm on field programmable gate array (FPGA)[J]. Microelectronics journal, 2019, 93(Nov.):104615.1-104615.8 [32] Martino R,Cilardo A. Designing a SHA-256 Processor for Blockchain-based IoTApplications[J].Internet of Things,2020.11:100254 [33] 纪兆轩,杨秩,孙瑜等.大数据环境下SHA1的GPU高速实现[J].信息网络安全,2020.230(2):79-86 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。