资源描述:
《hash签名在电子商务中的应用研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Hash签名在电子商务中的应用研究2006年l2月第27卷第l2期韶关学院-自然科学JournalofShaoguanUniversity?NaturalScienceDec.2006V01.27No.12Hash签名在电子商务中的应用研究庄景明(韶关学院信息工程学院,广东韶关512005)摘要:数字签名是一项应用于电子商务领域的安全技术.全面分析研究了Hash签名方法及MD5算法,并对Hash签名的优势与局限性进行了总结,指出只有构造出更安全的加密算法才能适应电子商务发展的安全需要.关键词:电子
2、商务;Hash;数字签名;MD5中图分类号:TP311文献标识码:A文章编号:1(107—5348(20o6)12—0035—03随着Intemet技术的高速发展,越来越多的企业和商家已把目光转向电子商务这一新型的商业模式,因此,如何建立一个安全,便捷的电子商务应用环境,为商业信息提供足够的保护,从而保障交易双方的安全和利益,是所有商家和用户十分关注的问题.电子商务的安全要素主要包括有效性,机密性,完整性,可靠性等方面[】】.由于电子商务直接关系到贸易双方的商业交易,如何确定要进行交易的贸易方正是
3、进行交易所期望的贸易方这个问题,是保证电子商务顺利进行的关键.在传统的贸易活动中,双方可以通过在交易合同,契约或有效票据等书面文件上手写签名或印章来鉴别对方,而在无纸化的电子商务活动中则要通过数字签名这一技术来解决这个问题."数字签名"是通过一个单向函数对要传送的文件进行处理得到的,用以认证文件来源并核实文件是否发生变化的一个字符串.该技术在具体实施时,首先发送方对文件信息施以数学变换,所得到的信息字符串与原信息惟一对应;在接收方进行逆变换,得到原始信息字符串.只要数学变换方法优良,变换后的信息字
4、符串在传输中就具有很强的安全性,很难被破译或篡改.数字签名的算法主要有Hash签名,DSS签名,RSA签名等,其中在电子商务活动中应用最广泛的算法是Hash签名.1Hash签名Hash签名也称为数字摘要法(DigitalDigest)或数字指纹法(Digit~FingerPrint).该方法是采用单向Hash函数将需加密的商务文件摘要成一串128位的密文,这串密文称为数字指纹,它有固定的长度,然后再将它与商务文件一起加密后传送给对方.将一个商务文件的内容与签名结合在一起,比文件和签名分开传送,增加
5、了可信度和安全性,更适合于电子商务活动.Hash签名的应用过程如下:(1)发送方首先依据hash函数从原文得到数字签名,然后采用发送方的私有密钥对数字签名进行加密,并把加密后的数字签名附加在要发送的原文后面;(2)发送方选择一个私有密钥对文件进行加密,并把加密后的文件通过网络传输到接收方;(3)发送方用接收方的公开密钥对自己的私有密钥进行加密,并通过网络把加密后的私有密钥传输到接收方;(4)接受方使用自己的私有密钥对加密过的密钥信息进行解密,得到发送方私有密钥的明文;(5)接收方用发送方的私有密钥
6、对文件进行解密,得到文件的明文;(6)接收方用自己的公开密钥对数字签名进行解密,得到数字签名的明文;(7)接收方用得到的文件明文和散列函数重新计算数字签名,并与解密后的数字签名进行对比,如果两个数字签名完全相同,说明文件在传输过程中没有被篡改,文件发送方也没有被假冒.收稿日期"2006—09—13作者简介:he景明(1966一),男,广东揭西人,韶关学院信息工程学院讲师,主要从事计算机应用技术教学研究?36?韶关学院?自然科学如果第三方冒充发送方发出了一个文件,因为接收方在对数字签名进行解密时使用
7、的是发送方的公开密钥,只要第三方不知道发送方的私有密钥,解密出来的数字签名和经过计算的数字签名必然不相同.安全的数字签名使接收方可以得到保证:文件确实来自声称的发送方.鉴于签名私钥只有发送方自己保存,他人无法做一样的数字签名,因此他无法否认自己参与了交易.2Hash算法常用的Hash算法有MD2,MD5,SH一1等,下面着重介绍在电子商务安全中广泛应用的MD5算法.MD5算法的全称是message—digestathIll5(信息一摘要算法),90年代初由MITLaboratoryforCompu
8、terScience和RSADataSecurityInc的RonaldL.Rivest开发,经由MD2,MD3和MD4发展而来.MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生唯一的一个MD5信息摘要.如果在以后传播这个文件的过程中,无论文件的内容发生了何种形式的改变(包括人为修改或者下载过程中线路不稳定引起的传输错误等),只要对这个文件重新计算MD5就会发现:信息摘要不相同.由此可以确定得到的是一个不正确的文件.如果再有一个第三方的认证机构,用MD5还可以