电子商务平台身份认证算法的设计与实现

杨品林
摘 要: 基于公钥密码方案的电子商务平台身份认证算法需要采用大数据运算完成加密解密,导致身份认证运算效率降低。为了提高身份认证效率,设计并实现基于哈希算法的电子商务平台身份认证方案,其分别针对用户登录和付款过程进行实体认证和起源认证,采用用户名以及一次性口令结合单向哈希算法完成實体认证。通过哈希算法、公钥密钥以及对称密钥系统对信息实施操作完成数据起源认证,并给出基于哈希算法的电子商务平台身份认证方案的实现过程。实验结果说明,所设计的身份认证方案具有较高的认证效率和认证精度。
关键词: 电子商务平台; 身份认证; 算法设计; 哈希算法
中图分类号: TN99?34; TP393.08 文献标识码: A 文章编号: 1004?373X(2017)23?0155?03
Abstract: The previous identity authentication algorithm based on public key cryptography scheme for e?commerce platform requires the big data operation to complete the data encryption and decryption, which results in the low operation efficiency of identity authentication. In order to improve the efficiency of identify authentication, the Hash algorithm based identify authentication scheme of e?commerce platform was designed and implemented. With which, the entity authentication and origin authentication are carried out for the user login and payment process respectively. The user name and one?time password are combined with one?way Hash algorithm to realize the entity authentication. The Hash algorithm, public secret key and symmetric key system are adopted to operate the information for data origin authentication. The realization process of the Hash algorithm based identity authentication scheme for e?commerce platform is given. The experimental result shows that the identify authentication scheme has high authentication efficiency and authentication precision.
Keywords: e?commerce platform; identity authentication; algorithm design; Hash algorithm
0 引 言
随着电子商务的快速发展,电子商务的安全问题也逐渐凸显。其中身份认证是电子商务安全问题研究的重点方向。电子交易进行前,买卖双方进行由第三方担保的双方身份认证可避免第三方假冒交易一方的身份,出现破坏交易的现象[1]。经过研究发现,当前的电子商务平台的身份认证方法主要采用公钥密码方案,通过大数据运算完成加密解密,使得身份认证的运算效率大大降低。因此,寻求高效率的电子商务平台身份认证方法具有重要的现实意义。
为了提高身份认证效率,设计并实现基于哈希算法的电子商务平台身份认证方案,实验结果说明,本文方案具有较高的认证效率和认证精度。
1 哈希算法的电子商务平台身份认证方案
1.1 哈希算法
单向哈希函数可赋予[M]专属的标识。若A用数字签名算法[H(M)]对[M]实施签名,则B可形成符合[H(M)=H(M)]的其他信息[M,]则B就是A对[M]的签名。
1.2 总体身份认证方案
电子商务由商务网络服务提供商、商品提供商、银行以及客户构成。客户和供货商登录电子商务网站面临的安全威胁主要存在登录和付款过程中[2?3]。因此,设计身份认证方案需要对该两个过程进行重点分析。本文设计的电子商务平台身份认证方案采用实体认证和起源认证,分别对用户登录和付款过程实施身份认证,具有较高的安全性。
面向电子商务认证过程中的需求,通过用户名以及一次性口令的认证方案完成实体认证:各用户名在服务器的数据库内同专属校验值相关联[4];用户输入用户名和口令完成身份认证,通过单向函数运算口令,时间戳完成一次性密码。
数据起源的认证方案为:若通信双方是A和B,B要求认证A,A无需认证B,则A向B传递证书,B采集到证书后通过操作可对A进行认证。如果A和B要求进行双向认证,则通过两次单向认证的手段完成身份认证。
1.3 具体身份认证方案
1.3.1 实体认证
实体认证的安全性主要集中在和用户名对应的口令上。一般可以在此处采用口令方案结合单向哈希算法进行,用图1描述。
图1中,[t]用于描述时间戳;[p]是用户ID以及口令的集成;[H( )]是哈希函数,其用于采集时间戳参数;[p]以及[p]是哈希运算获取的值。客户向服务器传递[p、]时间戳[t]通过哈希运算后获取哈希值[p、]用户名以及时间戳[5]。服务器从数据库中获取同用户名相关的口令,并对采集到的时间戳[t]实施哈希运算获取[M,]若[p]以及[p]一致,则服务器通过用户身份认证。该种方案能够解决重放攻击,当用户未对口令进行调控时,攻击者采用获取的认证交换信息无法获取真实的信息,不能完成信息的重放。若攻击者可对认证服务器实施攻击,攻击则能够得到用户的真实口令,此时需要对图1描述的实体认证Ⅰ进行调整,用图2描述。
图2描述的认证过程是:客户运算口令同其他用户名的哈希函数值[p],将[p]值存储到服务器中,基于[p]值和时间戳运算获取哈希值[p,]向服务器传递用户名、时间戳以及[p。]服务器按照用户名在数据库内获取相应的[p],基于[p]和时间戳运算得到哈希值[p,]对比[p]和[p]完成用户身份认证。该种认证方案可确保在服务器端数据库被攻击的状态下,攻击者仅能获取哈希值,不能得到用户的真实口令信息。
1.3.2 数据起源认证
数据起源认证对电子商务平台中的在线付款以及数字签名进行身份认证。通过哈希算法以及公钥密钥系统对信息实施操作完成身份认证。
图3描述的认证过程为:数据发送方A将传递的消息[M]采用公开密钥系统内A的密钥[SA]加密成C,则有[C=SA(M)]。A将传递的消息[M]以及时间戳采用哈希函数[H]运算获取哈希值[h,]则有[h=H(M,t)]。A向认证方传递[C,h,t,]则有[Send(C,h,t)]。认证方B采集到全部消息[Receive(C,h,t)],B将采集到的C用A的公钥解密获取[M,]则有[M=PA(C)=PA(SA(M))=M]。B将采集的[t]以及[M]通过哈希算法运算获取哈希值,则有[h=H(M,t)]。认证方B判断[h]和采集到的[h]是否一致[6],如果一致说明消息是安全的,采用私钥发送方传递消息[verify(h,h)]。B判断时间戳以及此刻时间是否超过设置的时间[verify(timenow-t)]。数据发送方传递认证反馈信息[7],该信息需要通过数据发送方进行认证。
以上描述的方案采用公钥密钥系统完成加密,导致系统的运行效率降低。因此,当电子商务平台中存在大规模认证信息时,设计了图4描述的数据起源认证Ⅱ,提高系统运行效率。其采用高效率的对称密钥加密(如DES)消息原文[8],再采用该密钥加密传递的信息,通过私钥对消息的哈希值以及时间戳实施加密。
发送方通过对称密钥加密DES完成消息的加密,对信息以及时间戳运算哈希值,采用私钥对哈希值以及时间戳实施加密,并将DES加密后的信息以及私钥加密的信息都反馈给接收方。接收方对DES加密的消息实施解密,获取消息原文采用对称公钥进行加密[9],获取时间戳以及哈希值,基于解密获取的时间戳和消息运算哈希值是否一致,若一致则说明通过验证。
2 哈希算法的电子商务平台身份认证方案的实现
基于哈希算法的电子商务平台身份认证方案的实现过程中,需要塑造网络服务器和客户端,通过客户端的登录实现身份认证。一个客户端向另一客户端传递认证证书,在另一客户端实施认证,实现数据起源认证。若为相互认证,则在客户端A完成客户端B的认证后,通过B对A进行认证,通过MFC架构塑造服务器同客户端程序间的关联性。通过统一的网络功能和用户接口实现不同功能间的协同运作。设计mdclass类实现哈希算法运算功能。该类的成员函数MDFile()和MDsitrgn()能夠运算文件以及字符串,产生哈希值。
服务器可完成监听连接、塑造连接以及控制通信等功能。设计CListeningSocket类实现监听连接,该类采用OnAccept()成员函数监听连接,塑造可实施连接的CClientSocket类。CClientSocket类采用OnReceive()成员函数对消息进行采集和操作,确保网络信息传递的顺利运行。客户端的功能是提供不同的实验用户接口。
实体认证是客户端输入用户名和口令,再基于输入的信息运算哈希值,将该哈希值同时间戳运算获取哈希值,再向服务器反馈最终运算的哈希值、用户名以及时间戳。服务器按照用户名数据库中获取对应的哈希值,同采集的时间戳运算获取哈希值,对比分析该哈希值同采集的哈希值,完成身份验证。
数据起源认证时发送方在客户端的编辑区域中输入数据,敲击Authentication按键后,对其实施私钥加密,运算初始数据和即刻时间的哈希值。再向验证方反馈数据、时间戳以及哈希值。验证方基于数据以及时间戳运算哈希值,对比分析运算获取的哈希值和采集的哈希值,完成身份验证,将认证反馈信息传递给发送方。
3 实验结果与分析
通过实验对本文提出的基于哈希算法的电子商务平台身份认证方案的性能进行检测,通过ARU8类型处理器以及Linux操作系统塑造电子商务模拟平台,将基于公钥密码的身份认证方案当成对比分析方案。实验不断提升待进行身份认证的用户数量,统计本文方案和基于公钥密码的身份认证方案的认证效率情况,用图5描述。
分析图5可得,随着用户数量的不断增加,两种认证方案的认证效率都出现了下降趋势,当用户数量低于200时,两种方案的认证效率差别不高;当用户数量高于200时,基于公钥密码的身份认证方案的认证效率大幅度降低,本文方案的认证效率变化较为平稳,表明本文方案的认证效率远远高于基于公钥密码的身份认证方案。
实验检测本文方案和基于公钥密码的认证方案在不同用户数下的错误拒绝率和错误通过率情况,结果分别用图6和图7描述。
分析图6和图7能够看出,随着用户数的增加,两种方案的错误通过率和错误拒绝率都逐渐降低,本文方案的错误通过率相对较低,错误拒绝率相对更高。当用户数高于250时,本文方案的错误通过率和错误拒绝率开始出现显著下降趋势,而对比方案的错误通过率和错误拒绝率却保持平稳,说明本文方案提高了电子商务平台身份认证的精确度,具有较强的适应能力。
4 结 语
本文设计并实现了基于哈希算法的电子商务平台身份认证方案,实验结果说明该方案具有较高的认证效率和精度,并且具有较高的适应性能。
参考文献
[1] 郭宝丹.移动电子商务的安全问题及对策探索[J].产业与科技论坛,2015,14(15):46?47.
[2] 庞永春,孙子文,王尧,等.基于手机触摸屏传感器多点触摸身份认证算法[J].计算机应用,2015,35(6):1780?1784.
[3] 谈玲,张琭.交互式多生物特征识别技术在电子商务中的应用[J].电信科学,2015,31(10):124?129.
[4] 王黎明,陈庭贵,孙澜.移动广告中基于交易认证模式的双向认证移动支付算法[J].荆楚理工学院学报,2016,31(4):41?47.
[5] 马瑞敏,卞艺杰,陈超,等.基于Hadoop的电子商务个性化推荐算法:以电影推荐为例[J].计算机系统应用,2015,24(5):111?117.
[6] 徐春婕,史天运,刘硕研,等.基于面部不变特征的铁路实名制检票人脸身份认证算法[J].中国铁道科学,2015,36(1):133?139.
[7] 高华.电子商务智能推荐系统中的案例检索算法探讨[J].长春大学学报,2016,26(2):14?17.
[8] 刘巧平,周斌,于丹,等.基于椭圆曲线的4G网络身份认证算法的研究[J].河南科学,2016,34(4):477?480.
[9] 李丹丹,华蕊.基于模糊综合评价法的移动商务身份认证评价[J].微电子学与计算机,2016,33(3):65?68.