HI,欢迎来到学术之家,期刊咨询:400-888-7501  订阅咨询:400-888-7502  股权代码  102064
0
首页 精品范文 个性签名文字

个性签名文字

时间:2023-05-30 09:13:16

个性签名文字

第1篇

2、人生犹如一场梦,梦醒了、心却碎了…

3、镜中花、水中月,注定、不会长久…

4、命劫本该如此,怨不得天、由不得人…

5、昙花一现、只是那一瞬间的事罢了…

6、樱花漫天飞舞、飘散在空中、美妙至极!可,樱花树却流下了眼泪…

7、梦幻般的童话梦境很美,只可惜、这一切终究只是梦境罢了…

8、我们的坚强,终究、瓦解…

9、海誓山盟终究抵不过一句甜言蜜语…

10、全世界你都可以拒绝,就是不能拒绝我!

11、爱到受了伤,最后、我不敢去面对…

12、得不到永远是最好的…

13、你来,我当你不会走;你走,我当你没来过。

14、如果有来生,我愿做一只小鸟,在树林间自由自在、无拘无束的飞翔。这样,既不会有烦恼,也不会伤心…

第2篇

关键词:数字签名公钥私钥签名认证

一、研究目的

随着油田协同办公平台研究的不断深入,领导签批业务呈扩大化的趋势,网上签批作为其中重要的一环如果解决不好势必影响整个办公系统的效率,将先进的网上签批技术融合到协同办公系统,能够提高网上审批的安全性和权威性,拓展办公系统现有网上审批功能,提高办公效率,逐步深入实现数字化办公。因此需要对网络签批业务进行整体规划,实现统一签批模式、统一安全认证。为此,一种用来保证信息完整性的安全技术――数字签名技术成为人们非常关心的话题。

本文在研究了数字签名技术的原理和数字签名中的签名和认证过程的基础上,通过以Visual C++6.0为开发工具,实现数字签名的签名和认证程序,对文本生成的数字摘要通过签名算法进行签名,并对签名值利用认证算法进行认证,判断签名的有效性。数字签名是通过一个单向函数对要传送的报文进行处理得到的用以认证报文来源并核实报文是否发生变化的一个字母数字串。电子签名可以解决否认、伪造、篡改及冒充等问题。

二、数字签名相关技术的研究

实现数字签名有很多方法,目前数字签名采用较多的是公钥加密技术,如基于RSA Date Security 公司的PKCS( Public Key Cryptography Standards )、Digital Signature Algorithm、x.509、PGP(Pretty Good Privacy).1994年美国标准与技术协会公布了数字签名标准(DSS)而使公钥加密技术广泛应用。

(一)用非对称加密算法进行数字签名

1、算法的含义

此算法使用两个密钥:公开密钥(public key)和私有密钥(private key),分别用于对数据的加密和解密,即如果用公开密钥对数据进行加密,只有用对应的私有密钥才能进行解密;如果用私有密钥对数据进行加密,则只有用对应的公开密钥才能解密。

2、签名和验证过程

(1)发送方首先用公开的单向函数对报文进行一次变换,得到数字签名,然后利用私有密钥对数字签名进行加密后附在报文之后一同发出。

(2)接收方用发送方的公开密钥对数字签名进行解密变换,得到一个数字签名的明文。发送方的公钥是由一个可信赖的技术管理机构即验证机构(CA: Certification Authority)的。

(3)接收方将得到的明文通过单向函数进行计算,同样得到一个数字签名,再将两个数字签名进行对比,如果相同,则证明签名有效,否则无效。

这种方法使任何拥有发送方公开密钥的人都可以验证数字签名的正确性,数字签名是对整个报文进行的,是一组代表报文特征的定长代码,同一个人对不同的报文将产生不同的数字签名。

(二)用对称加密算法进行数字签名

1、算法的含义

对称加密算法所用的加密密钥和解密密钥通常是相同的,即使不同也可以很容易地由其中的任意一个推导出另一个。在此算法中,加、解密双方所用的密钥都要保守秘密。由于计算速度快而广泛应用于对大量数据如文件的加密过程中,如RD4 和DES。

2、签名和验证过程

Lamport发明了称为Lamport-Diffie的对称加密算法:利用一组长度是报文的比特数(n)两倍的密钥A,来产生对签名的验证信息,即随机选择2n个数B,由签名密钥对这2n个数B进行一次加密变换,得到另一组2n个数C。

(1)发送方从报文分组M的第一位开始,依次检查M的第i位,若为0时,取密钥A的第i位,若为1则取密钥A的第i+1位;直至报文全部检查完毕。所选取的n个密钥位形成了最后的签名。

(2)接收方对签名进行验证时,也是首先从第一位开始依次检查报文M,如果M的第i位为0时,它就认为签名中的第I组信息是密钥A的第i位,若为1则为密钥A的第i+1位;直至报文全部验证完毕后,就得到了n个密钥,由于接收方具有发送方的验证信息C,所以可以利用得到的n个密钥检验验证信息,从而确认报文是否是由发送方所发送。

这种方法安全性较好,缺点是签名太长,签名密钥及相应的验证信息不能重复使用,否则极不安全。

三、密验证算法的研究

数字签名的算法很多,应用最为广泛的三种是:Hash签名、DSS签名、RSA签名。

(一)Hash签名

Hash签名不属于强计算密集型算法,应用较广泛。很多少量现金付款系统,如DEC的Millicent和CyberCash的CyberCoin等都使用Hash签名。Hash的主要局限是接收方必须持有用户密钥的副本以检验签名,因为双方都知道生成签名的密钥,较容易攻破,存在伪造签名的可能,如果中央或用户计算机中有一个被攻破,那么其安全性就受到了威胁。

(二)DSS和RSA签名

DSS和RSA采用了公钥算法,不存在Hash的局限性。RSA是最流行的一种加密标准,许多产品的内核中都有RSA的软件和类库。RSA与Microsoft、IBM、Sun和Digital都签订了许可协议,使在其生产线上加入了类似的签名特性。与DSS不同,RSA既可以用来加密数据,也可以用于身份认证。和Hash签名相比,在公钥系统中,由于生成签名的密钥只存储于用户的计算机中,安全系数大一些。

XML数字签名可以实现网络环境中对特定URI的数据资源的签名,也可以对XML文档签名,还可以对放入XML文档里面的数据元素来签名,因而以XML文档来组织数据进行交换将具有较高安全可靠性。

这里实现了一个应用程序对用户指定的的网上文件进行签名及校验,对现有的XML文件进行签名与校验,还可以对其他即时数据进行签名。如下页图1所示。

盲签名:盲签名是指消息拥有者的目的是让签名人对该消息签字,但不让签名者知道消息的具体内容,签名保证在某一时刻以公证人的资格证实这个消息的存在。盲签名包括盲化消息、签名、对签名去盲、验证签名有效性几个步骤,这里只讨论一种利用XML数字签名机制实现的盲签名如何用现有的XML数字签名实现。

利用XML数字签名机制实现的盲签名:Alice 选择随机大数和待签名的消息,随机数,计算=Mrmodn,将传给Bob。

Bob对盲信息进行XML数字签名(采用RSA-SHA1算法)并将XML签名产生的文件传给Alice。Alice将M与XML文件一并作为签名。

验证者从Alice那里得到r和n,计算出盲信息,将它与XML文件中被签名信息比较,若相等则继续进行XML数字签名核心验证,若核心验证通过则最后对信息M的数字签名验证通过,否则签名验证失败。

验证阶段需要向消息拥有者询问盲信息产生所需的随机数r和n。因此消息拥有者每次让签名者签名完成之后要保留r和n,因而,这是受到很多限制的盲签名。由于XML数字签名签名时要对所签信息利用指定的算法转化,因而使得XML数字签名并不像普通方式下的数字签名那么单纯。要实现更加复杂的签名方式必须对XML数字签名的很多细节很清楚。

四、数字签名的发展前景展望

生成和验证数字签名的工具需要完善,只有广泛使用SSL(安全套接层)建立安全链接的Web浏览器,才可能频繁用到数字签名技术。基于数字签名技术来提升业务办理信息化水平,保障领导、职能部门网上签批的安全性和信息传输的完整性;能够在油田协同办公平台的流程审批、费用签批以及文件下发流转中得到应用。

参考文献:

[1]张先红.数字签名原理与技术.北京:机械工业出版社,2004.

第3篇

【关键词】数字签名;密钥;时间标记

     一、数字签名的相关定义

所谓“数字签名”,就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替手写签名或印章,对于这种电子式的签名还可进行技术验证。数字签名在iso7498-2标准中定义为:“附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造”。数字签名实现的功能与我们“有纸办公”的手写签名类同,具有准确性、实用性、完整性、可鉴别性、不可抵赖性等特性,同时解决否认、伪造、篡改及冒充等问题。

二、数字签名技术

数字签名技术实际使用了信息发送者的私有密钥变换所需传输的信息,对于不同的文档信息,发送者的数字签名并不相同。目前主要是基于公钥密码体制的数字签名,包括普通数字签名和特殊数字签名。普通数字签名算法有sha、rsa、schnorr数字签名算法等。特殊数字签名有代理签名、门限签名等。

(一)rsa算法体制

1978年,美国三位学者rivest、shamir和adleman,提出了rsa公钥密码体制,它是第一个成熟的、迄今为止上最成功的公钥密码体制。

rsa算法是建立在大数分解和素数检测的理论基础上的,是一种分组密码体制。它的思路是:两个大素数相乘在计算上是容易实现的,但将它们的乘积分解为两个大素数的因子的计算时却相当巨大,甚至在计算机上也是不可实现的。所谓素数检测,是指判断给定的一个整数是否为素数。rsa的安全性基于数论中大整数的素因子分解的困难性。

(二)使用公开密钥密码技术对文件签名的过程

公开密钥或者私人密钥都可用作加密。用你的私人密钥加密文件,你就拥有安全的数字签名。

1.数字签名的协议举例:假设有a公司的老板名叫john,b公司的老板名叫marry,现john想传输一个文件给marry,这个文件是有关于一个合作项目标书,属公司机密,不能让其它人知道,而恰好有一个c公司的老板david对a和b公司的那项合作标书非常关注,总想取得a公司的标书。于是他时刻监视他们的网络通信,想在john通过网络传输这份标书时,从网络上截取它。为了防止david截取标书,实现安全传输,我们可以采用以下步骤:

    (1)marry用她的私人密钥对文件加密,从而对文件签名。

    (2)marry将签名的文件传给john。。

    (3)john用marry的公开密钥解密文件,从而验证签名。

      这个协议比以前的算法更好。不需要trent去签名和验证。从中需要证明marry的公开密钥确实是她的。甚至协议的双方不需要trent来解决争端;如果john不能完成第3步,那么他知道签名是无效的。

这个协议也满足我们期待的要求:

(1)签名是可信的,当john用marry的公开密钥时,他知道是由marry的签名。

(2)签名不可伪造的,只有marry知道她的私人密钥解密。

(3)签名是不可重用的。签名是文件的函数,并且不可能转换成另外的文件。

(4)被签名的文件是不可改变的。如果文件有任何的改变,文件就不可能用marry的公开密钥验证。

(5)签名是不可抵赖的。john不需要marry的帮助就能验证marry的签名。

2.文件签名和时间标记。实际上,john在某种情况下可以欺骗marry。他可能把签名和文件一起重用。如果marry在合同上签名,这种重用不会有什么问题,但如果marry在一张数字支票上签名,那样做就令人兴奋了。假若marry交给john一张¥100000的签名数字支票,john把支票拿到银行去验证签名,然后把钱从marry的账户上转到自己的账户上。john是一个无耻之徒,他保存了数字支票的副本。过了一星期,他又把数字支票拿到银行(或可能是另一个银行),并把钱转到他的账户上。只要marry不去对支票本清账,john就可以一直干下去。

因此,数字签名经常包括时间标记。对日期和时间和签名附在消息中,并跟消息中的其他部分一起签名。银行将时间标记存储在数据库中。现在,当john第二次想支取marry的支票时,银行就要检查时间标记是否和数据库中的一样。由于银行已经从marry的支票上支付了这一时间标记的支票,于是就报警。

三、我国数字签名存在的问题及分析

数字签名的保密性很大程度上依赖于公开密钥。数字认证是基于安全标准、协议和密码技术的电子证书,用以确立一个人或服务器的身份,它把一对用于信息加密和签名的电子密钥捆绑在一起,保证了这对密钥真正属于指定的个人和机构。

由于互联网自身的开放性和全球性,在电子交易过程中也产生了诸多安全和诚信的法律问题。

(一)数字签名存在的问题

网络信息系统的技术性和管理性安全成为数字签名应用的最大威胁。同时在我们广泛接受数字签名的过程中还存在着诸多法律问题。争论最激烈的是关于数字签名能否与手写签名一样具有可靠性,是否能具备“认可”的条件。为了更好地努力分析数字鉴定的可靠性, 全世界的国家都起草了数字签名的提议, 联合国甚至也在试图建立一个国际标准。美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(dss)。一些国家如法国和德国已经制定一套法律、规则及实际操作方法,用于规范某个机构如何来管理、保护和分配资源以达到安全策略的既定目标。由于我国电子商务起步相对较晚,技术相对落后,缺乏具有自主知识产权的安全产品,因此在安全问题方面还存在着更多的风险与危机。

(二)解决我国数字签名存在问题的策略

目前我国电子签名法对可靠的数字签名判断的不易掌握性与执法者对这一崭新领域的陌生感之间的反差,使我们很是忧虑。下面提出解决我国数字签名存在问题的若干建议:

1.大力发展先进的、具有自主知识产权的信息技术,建立一个完整的信息网络安全体系。我国信息安全研究起步较晚,在网络信息系统中使用的计算机、路由器等软、硬件系统大部分由国外引进,而且信息技术相对落后,由此加大了我国数字签名发展的安全风险和技术选择风险。因此要加快完善我国信息网络安全的技术安全、管理安全和政策法律安全体制的步伐。只有信息网络体系健全,那么通过网络传输的信息的安全才能得到保证,数字签名技术才能发挥真正的作用。

2.数字签名技术仍需进一步完善,大力改进数字签名内在的安全技术措施,如生成和验证数字签名的工具需要完善,只有用ssl(安全套接层)建立安全链接的web浏览器,才会频繁使用数字签名。

3.和数字签名有关的复杂认证能力程序化、简易化并易于掌握、便于操作;就像现在操作、应用环境中的口令密码一样直接做进操作系统环境、应用、远程访问产品、信息传递系统及in?鄄ternet防火墙中,方便用户的操作和使用。另一方面,还要不断教育我们的广大用户,使其具备自行约定可靠数字签名的常识和能力,以便及时维护自身的合法权益。

4.及时修改、完善《电子签名法》和《电子认证服务管理办法》等相关法律法规。法律为数字签名的安全和诚信提供必要的保障。科技和社会的发展要比法律变化快,我们的法律不能一成不变,要让法律的变化与科技、社会的发展同步而行。

5.确定ca认证权的归属问题尤为关键。数字签名的第三方认证由依法设立的电子认证服务提供者提供认证服务。需要第三方认证的数字签名应由依法设立的电子认证服务提供者提供认证服务。由于公共密钥的存储需要,所以需要建立一个鉴定中心(ca),来完成个人信息及其密钥的确定工作。鉴定中心是一个政府参与管理的具有可信赖性的第三方成员,以便保证信息的安全和集中管理。数字签名决定着技术商业信誉的建立,数字签名技术的发展决定着电子商务中的诚信问题。

在电子签名法及电子支付的指引下,大力发展数字签名在我国网上支付、电子税收、电子海关、网上采购等领域的应用,让我国更安全的新一代电子认证与世界接轨。当数字签名技术越来越普遍的时候, 并不是每个人都觉得满意。数字签名是未来信息安全发展的潮流,不断完善数字签名的基础设施环境和法律、技术问题,自然成了我国目前发展数字签名的当务之急。 【参考文献】

      [1]谢希仁.计算机网络[m].电子工业出版社,2003.

      [2]rivest,shamir, adleman.a method for obtaining digital signature and public key cryptosystems.commun.acm[j].1978,(2).

      [3]管有庆,王晓军.电子商务安全技术[m].电子工业出版社,2005.

      [4]吴汉平.信息站与信息安全[m].电子工业出版社,2003.

      [5]彭钦,郭晶.电子商务教程[m].人民邮电出版社,2005,.

第4篇

[关键词] PKI 用户密钥 系统密钥 数字签名

一、引言

在网络经济时代,电子商务逐渐成为一种主流商务模式。2004年8月28日经全国人民代表大会常务委员会审议批准通过的《中华人民共和国电子签名法》(简称《 电子签名法》)标志着电子签名与手写签名或印章具有同等法律效力。它适用于我国的电子商务、电子政务、网上银行及网上证券业并对它们的发展产生深远的影响。是我国进入世界先进数字化、网络化国家的重要标志之一,对我国电子商务、电子政务的顺利发展,提高我国信息化程度,提高我国的国民经济水平,提高银行界的经营效益和质量,将起着非常重大的促进作用。但目前比较成熟的,世界先进国家普遍使用的电子签名技术还是“数字签名”技术。数字签名用于鉴定签名人的身份以及对一项电子数据内容的认可。它还能验证出文件的原文在传输过程中有无变动,确保传输电子文件的完整性、真实性和不可抵赖性。随着网络的发展和普及,数字签名系统密钥的安全,一直是国内外研究人员的研究热点。

二、现行数字签名的加解密技术的缺陷

现行数字签名的加解密技术绝大多数采用的是20世纪80年代由美国学者提出的公钥基础设施(PKI)。PKI是一种利用非对称密码算法(RSA算法,即公开密钥算法)原理和技术来实现的,并提供网络安全服务应具有通用性的安全基础设施。它利用公钥加密技术为电子商务、电子政务、网上银行和网上证券业提供一整套安全保证的基础平台。用户利用PKI基础平台所提供的安全服务,能在网上实现安全的通信。它的组成如下图所示,图中,PKI的核心执行机构是认证机构CA,其核心元素是数字证书。它是一种权威性、可信任性和公正性的第三方机构。CA是不参与交易双方利益的第三方机构,因而具有公正性。在通信过程中,发方(甲方)将原文用哈希算法求得数字摘要,用签名私钥对数字摘要加密得数字签名,发方将原文与数字签名一起发送给接收方(乙方);接收方验证签名,即用发方公钥解密数字签名,得出数字摘要;接收方将原文采用同样哈希算法又得一新的数字摘要,将两个数字摘要进行比较,如果二者匹配,说明经数字签名的电子文件传输成功。根据Kerckhof假设,数字签名体制的安全性完全依赖于密钥的安全性。然而在实际应用中,由于采用公开密钥算法,密钥容易被攻破而带来严重后果。为了减轻密钥泄漏所带来的严重后果,有人提出了前向安全签名的概念,前向安全体制的思想是将整个系统的生存时间划分为n个时期,密钥根据更新算法在每个时期进行更新,而公钥保持不变。攻击者即使获得了某个时期的密钥,也无法对该时期以前的密钥构成威胁。但是随着各种无线、移动数字产品的使用,密钥越来越多地保存在不安全的设备中,另外由于用户缺乏经验和保护意识,使得密钥很容易泄露。攻击者获得某个时期的密钥,虽然无法对该时期以前的密钥构成威胁,但是对该时期以后的密钥仍会构成威胁。因此系统仍将停止使用,重新建立。另外,由于用户对可信中心依赖过大,加密或签名的过程必须在可信中心的监督下运行,即可信中心有能力在用户不同意的情况下单独解密签名用户的文件。

三、对数字签名的加解密技术的改进

针对上述数字签名的加解密技术方面存在的缺陷,本文提出基于离散对数问题的密钥隔离和数字水印技术的数字签名体制,利用z次多项式,将密钥分为用户密钥和系统密钥,签名时由用户密钥完成,密钥更新时由用户密钥和系统密钥合作完成(即上图中的甲方、乙方、CA共同完成),从而实现密钥隔离的思想。该体制计算简单,安全性能高,实用性强。

1.系统建立算法B(概率算法,由用户完成)

(1)随机选择两个n比特大素数P和q,P=2q+1,设Bq是中阶为q的子群,b是Bq的生成元;

(2)随机选择一个Z次多项式,;

(3)随机选择HASH函数H;

(4)公开公钥,秘密保存密钥。公钥,由用户秘密保存用户密钥,由可信中心秘密保存系统密钥。

2.系统密钥更新算法U*(多项式算法,由可信中心完成)

输入时期数i(1≤i≤n),由系统密钥SK*计算出i时期的部分密钥,并将秘密传送给用户。

3.用户密钥更新算法U(多项式算法,由用户完成)

输入时期数i(1≤i≤n),由i-1时期的密钥和i时期的部分密钥,计算出i时期的密钥,用户将秘密保存密钥,并销毁密钥。

4.签名过程

在i时期,设有待处理信息M,签名者将信息原文用哈希算法求得数字摘要,然后将数字摘要进行数字水印处理,用签名私钥对数字水印处理后的数字摘要加密得数字签名。签名者随机选取,计算:,,将作为签名公布。

5.验证算法V(多项式算法)

在i时期,对信息M的签名进行验证。

(1)计算;

(2)计算;

(3)计算;

(4)验证是否成立。若等式成立,则接受签名;否则拒绝签名。

四、结语

本文介绍了基于离散对数问题的密钥隔离和数字水印技术的数字签名体制的基本思想,利用z次多项式,将密钥分为用户密钥和系统密钥,签名时由用户密钥完成,密钥更新时由用户密钥和系统密钥合作完成。在数字签名过程中,通过密钥分离克服了可信中心在用户不同意的情况下单独解密签名用户的文件和攻击者获得某个时期的密钥及公钥解密数字签名的缺陷。同时使用了数字水印技术来处理数字签名,数字签名的安全性得到了进一步增强了。计算简单,安全性能高,实用性强,具有广泛的应用前景。

参考文献:

[1]关振胜:《电子签名法》与数字签名的技术实现[J].电子商务,2006.1:36-43

[2]M Bellare,S miner. A forward-secure digital signature scheme[C].In:Advances in Cryptology-Crypto’99,volume 1666 of Lecture Notes of Computer Seience,1999:431-448

[3]R Anderson.Two remarks on public key cryptology[C].In:Fourth Annual Conference on Computer and Communications Security,ACM,1997

第5篇

论文摘要:分析数字签名的功能、原理及其与传统手写签名的差别,对基于身份的数字签名进行了探讨,给出了数字签名在电子政务中的具体应用。

论文关键词:数字签名:电子政务;信息安全

1概述

1.1概念与功能

数字签名是防止他人对传输的文件进行破坏.以及确定发信人的身份的手段该技术在数据单元上附加数据,或对数据单元进行秘密变换.这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,从而达到保护数据,防止被人进行伪造的目的。简单说来,数字签名是指用密码算法,对待发的数据进行加密处理,生成一段数据摘要信息附在原文上一起发送,接受方对其进行验证,判断原文真伪其签名思想是签名只能南一个人(个体)创建,但可以被任何人校验.

数字签名技术可以解决数据的否认、伪造、篡改及冒充等问题,满足上述要求的数字签名技术有如下主要功能:(1)发送者事后不能否认自己发送的签名;(2)接收者能够核实发送者发送的签名;(3)接收者不能伪造发送者的签名;(4)接收者不能对发送者的原文进行篡改;(5)数据交换中的某一用户不能冒充另一用户作为发送者或接收者

1.2数字签名与传统手写签名差别

(1)签署文件方面:一个手写签名是所签文件的物理部分,而数字签名不是,所以要使用其他的办法将数字签名与所签文件“绑定”。

(2)验证方面:一个手写签名是通过和一个真实的手写签名相比较来验证的而数字签名是通过一个公开的验证算法来验证:

(3)签名的复制:一个手写签名不容易被复制,因为复制品通常比较容易被鉴别来:而数字签名很容易被复制,因为一个文件的数字签名的复制品和原文件是一样的:所以要使用数字时问戳等特殊的技术避免数字签名的重复使用。

(4)手书签名是模拟的,且因人而异。数字签名是0和1的数字串,因人和消息而异。

一个安全有效的签名方案必须满足以下要求:1)任何人都可以验证签名的有效性;2)除了合法的签名者外,其他人伪造签名是困难的;3)对一个消息的签名不可复制为另一个消息的签名;4)签名的消息不可被篡改,一旦被篡改,则任何人都可以发现消息与签名的不一致;5)签名者事后不能否认自己的签名。

安全的数字签名实现的条件:发方必须向收方提供足够的非保密信息,以便使其能验证消息的签名,但又不能泄露用于产生签名的机密信息,以防止他人伪造签名。此外,还有赖于仔细设计的通信协议:

2原理

数字签名有两种:一种是对整体消息的签名,一种是对压缩消息的签名。每一种又可分为两个子类:一类是确定性(Deterministi)数字签名,其明文与密文是一一对应的,它对特定消息的签名不变化;一类是随机化的(Randomized)或概率式数字签名。

目前的数字签名技术大多是建立在公共密钥体制的基础上,其工作原理是:

(1)签名:发方将原文用哈希算法求得数字摘要,用签名私钥对数字摘要加密得数字签名,将原文与数字签名一起发送给接受方。

签名体制=(M,S,K,v),其中M:明文空间,S:签名的集合,K:密钥空间,V:证实函数的值域,由真、伪组成。

签名算法:对每一m∈M和每一k∈K,易于计算对m的签名s=Sigk(M)∈S

签名算法或签名密钥是秘密的,只有签名人掌握。

(2)验证:收方验证签名时,用发方公钥解密数字签名,得出数字摘要;收方将原文采用同样哈希算法又得一新的数字摘要,将两个数字摘要进行比较,如果二者匹配,说明经签名的电子文件传输成功。

验证算法:

Verk(S,M)∈{真,伪}={0,l1

3基于身份的数字签名

3.1优势

1984年Shamir提出基于身份的加密、签名、认证的设想,其中身份可以是用户的姓名、身份证号码、地址、电子邮件地址等。系统中每个用户都有一个身份,用户的公钥就是用户的身份,或者是可以通过一个公开的算法根据用户的身份可以容易地计算出来,而私钥则是由可信中心统一生成。在基于身份的密码系统中,任意两个用户都可以安全通信,不需要交换公钥证书,不必保存公钥证书列表,也不必使用在线的第三方,只需一个可信的密钥发行中心为每个第一次接入系统的用户分配一个对应其公钥的私钥就可以了。基于身份的密码系统不存在传统CA颁发证书所带来的存储和管理开销问题。

3.2形式化定义

基于身份的数字签名由以下4个算法组成,

Setup(系统初始化):输入一个安全参数k,输出系统参数param、和系统私钥mk,该算法由密钥产生机构PKG运行,最后PKG公开params,保存mk。Extract(用户密钥生成):输入params、mk和用户的身份ID,输出用户的私钥diD,该算法由PKG完成,PKG用安全的信道将diD返回给用户。Sign(签名):输入一个安全参数r、params、diD以及消息M,输出对}肖息M的签名盯,该算法由用户实现。Verify(验证):输入params、签名人身份ID、消息m和签名,输出签名验证结果1或0,代表真和伪,该算法由签名的验证者完成。其中,签名算法和验证算法与一般签名方案形式相同。

4数字签名在电子政务中的应用

4.1意义

数字签名的过程和政务公文的加密/解密过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也各不相同。数字签名使用的是发送方的密钥对,发送方用自己的私钥进行加密,接收方用发送方的公钥进行解密。这是一个一对多的关系,即任何拥有发送方公钥的人都可以验证数字签名的正确性。政务公文的加密/解密则使用接收方的密钥对,这是多对一的关系,即任何知道接收方公钥的人都可以向接收方发送加密公文,只有唯一拥有接收方私钥的人才能对公文解密。在实际应用过程中,通常一个用户拥有两个密钥对,一个密钥对用来对数字签名进行加密,解密;另一个密钥对用来对公文进行加密懈密,这种方式提供了更高的安全性。

4.2形式

4.2.1个人单独签名

由于政务公文的文件相对来说都比较大,所以一般需要先对所要传输的原文进行加密压缩后形成一个文件摘要,然后对这个文件摘要进行数字签名。一般由两个阶段组成:对原文的数字签名和对数字签名的验证。

(1)对原文的数字签名

先采用单向散列哈希算法对所要传输的政务公文x进行加密计算和压缩,推算出一个文件摘要z。然后,公文的发送方用自己的私钥SKA对其加密后形成数字签名Y,并将该数字签名附在所要传送的政务公文后形成一个完整的信息包(X+Y)。再用接收方的公钥PKB对该信息包进行加密后,通过网络传输给接收方。

(2)对数字签名的验证

接收方收到该信息包后,首先用自己的私钥SKB对整个信息包进行解密,得到两部分信息:数字签名部分Y和政务公文原文部分x;其次,接收方利用发送方的公钥PKA对数字签名部分进行解密,得到一个文件摘要Z;接着,接收方也采用单向散列哈希算法对所收到的政务公文原文部分进行加密压缩,推算出另外一个文件摘要z1。由于原文的任何改动都会使推算出的文件摘要发生变化,所以只要比较两个文件摘要z和z1就可以知道公文在传输途中是否被篡改以及公文的来源所在。如果两个文件摘要相同,那么接收方就能确认该数字签名是发送方的,并且说明文件在传输过程中没有被破坏。通过数字签名能够实现对原始报文的鉴别。

4.2.2多重数字签名

第6篇

电子商务的安全控制体系结构是保证电子商务中数据安全的一个完整的逻辑结构,由网络服务层、加密技术层、安全认证层、交易协议层、应用系统层5个部分组成组成。

二、电子商务安全交易规范(set)协议中使用的密码手段

1.加密:用户将信息加密保证了信息的秘密性。直接加密方法。当两个用户想安全的交换信息时,互相交换各自的公钥,保密私钥。对称密钥的使用。set使用密码技术来确保消息的秘密性。在set中,消息数据通过一个随机生成的对称密钥加密,再将此密钥用接收者的公钥加密(被称作消息的“数字信封”)后与加密消息一起传送到接收方。在接到数字信封后,接收者使用自己的私钥解密获得随机生成的对称密钥,再用该密钥将原始信息还原出来。

2.数字签名:数字签名确保了信息的完整性和不可否认性。密钥的使用。对于能够同时确保数据秘密性和真实性的公钥密码体制,由于公钥和私钥的数学关系,使得使用任一密钥加密的数据都可以通过相匹配的密钥解密,故而,发送者也可以将消息用其私钥加密后发出,任何接收者在接到发送者的消息后都可以通过其公钥将消息还原。

数字摘要。从一条消息中利用单向安全hash函数抽取一串唯一的固定长度的数据表示该消息的数字摘要,数字摘要具有唯一性即不同消息对应的摘要不同(在相当大的概率上),同一消息对应的摘要总相同。

数字签名。用发送者私钥加密数字摘要,就得到了数字签名。接收到数字签名的接收者即可以确定该消息确实来自消息的发送者。同时,由于对消息中任意一位改动后,将造成数字摘要不可预知的变化,所以接收者可以通过利用同一个安全hash函数从接收到的消息中抽取数字摘要和接收到的数字摘要进行比较来验证消息在传送过程中是否被改变。

两个密钥对。set使用了单独的公/私钥对来产生数字签名。这样,set中的各方就拥有了两个密钥对:一个密钥对用于加密和解密过程,它是对称密钥。另一个密钥对用于创建和验证数字签名,而这对密钥是非对称密钥。

三、数字签名网络安全与用户隐私问题分析

1.数字签名的网络安全问题。互联网的产生,一方面给人们生活带来了意想不到的便利,同时也给我们带来了前所未有的挑战。互联网上存在的众多黑客,对数字签名的安全带来巨大的威胁。我国一些部门受到黑客攻击的情况十分普遍,解决网络的安全问题己经迫在眉睫,成为公众关注的焦点问题。因此,网络安全方面的问题也成了电子签名法推行中最大的制约因素。当然,随着网络技术的不断进步,这种情况会得到改善。

2.关于用户隐私和商业秘密保护方面的问题。用户采用了数字签名技术后,其隐私和商业秘密能否得到保障也是一个难题。如前所述,数字签名的实现需经过多个环节,从发送端,经公开网络传输至认证中心,再经公开网络传至接受端。每一个环节用户的数据都有可能被泄露,尽管国家高度重视诚信建设,但近几年交易市场中的欺诈行为却屡禁不止。电子商务的一个显著优势是不受时间、空间的约束便可完成交易,但这也是电子商务的一个缺陷。

四、数字签名原理及应用逻辑流程

1.认证。从数字签名的过程可以看出,数字签名应当满足下列要求:接收方能够确认或证实发送方的签名,但不能伪造。发送方发出签名的消息给接收方后,就不能再否认所签发的消息。接收方对收到的签名消息不可否认,即有收报认证。认证的前提是甲乙双方都具有第三方以所签发的证书,认证分单向认证和双向认证。单向认证是甲乙双方在网上通信时,甲只需要认证乙的身份即可。双向认证是甲乙双方在网上通信时,甲不但要认证乙的身份,乙也要认证甲的身份。其认证过程与单向认证过程相同。甲乙双方在网上查询对方证书的有效性及黑名单时,是采用的ldap协议(light directory access protocol),它是一种轻型目录访问协议。

2.数字签名与验证过程。网上通信的双方,在互相认证身份之后,即可发送签名的数据电文。数字签名的全过程分两大部分,即签名与验证。参照图3数字签名过程分两部分:左侧为签名,右侧为验证过程。即发方将原文用哈希算法求得数字摘要,用签名私钥对数字摘要加密得数字签名,发方将原文与数字签名一起发送给接受方;收方验证签名,即用发方公钥解密数字签名,得出数字摘要;收方将原文采用同样哈希算法又得一新的数字摘要,将两个数字摘要进行比较,如果二者匹配,说明经数字签名的电子文件传输成功。

3.数字签名的操作过程。数字签名需要有发方的签名证书的私钥及其验证公钥。数字签名操作具体过程如下:首先是生成被签名的电子文件(《电子签名法》中称数据电文),然后对电子文件用哈希算法做数字摘要,再对数字摘要用签名私钥做非对称加密,即作数字签名,之后是将以上的签名和电子文件原文及签名证书的公钥加在一起进行封装,形成签名结果发送给收方,待收方验证。

4.数字签名的验证过程。接收方首先用发方公钥解密数字签名,导出数字摘要,并对电子文件原文作同样哈希算法得一个新的数字摘要,将两个摘要的哈希值进行结果比较,相同签名得到验证,否则无效。这就作到了《电子签名法》中所要求的对签名不能改动,对签署的内容和形式也不能改动的要求。

参考文献:

[1]art taylor,brian buege,paul gier,hacking exposedtm j2ee&java:developing secure applications with java technology format:paperback pub. date:september 2002

[2]李艳平周玉梅:我国数字签名立法问题研究[j].南昌高专学报,2005.6:18~19

第7篇

关键词:数字签名;Hash签名;DSS;RSA;DSA

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)25-7096-02

Implement of Intranet Information Security with Digital Signature Technology

HUANG Wei

(Hunan Radio and Television University, Changsha 410004, China)

Abstract: The problem of the Intranet information security is quite prominent, and the digital signature technology plays a important role to ensure the integrity of data,private and non-repudiation.This paper analyzes work process of digital signature in detail and presents the basic step of its implement.The analysis provides the theoretic base for Intranet information security.

Key words: digital signature; hash signature; DSS; RSA; DSA

在网络环境下使用计算机,信息安全是一个非常突出的问题。数据加密是保护数据的最基本的方法。单纯数据加密技术只能防止非法用户获得真实数据,但不能解决否认或抵赖、伪造、篡改和冒充等安全问题。为了解决这类问题,产生了数字签名技术。数字签名包括加密、随机功能(指印或信息摘要)、数字化签字、经权威机构认可的证书(CA)。

1 数字签名技术常见算法

数字签名的算法很多,应用最为广泛的三种是:Hash签名、DSS签名、RSA签名。

1.1 Hash签名

Hash签名不属于强计算密集型算法,应用较广泛。Hash签名使用密码安全函数MD5或SHA,并从文件中产生一个Hash值。Hash值作为签名与文件一起传送。接收方用密钥的副本对签名进行检验。由于使用较快的算法,可以降低服务器资源的消耗,减轻中央服务器的负荷。Hash的主要局限是接收方必须持有用户密钥的副本以检验签名,因为双方都知道生成签名的密钥,较容易攻破,存在伪造签名的可能。如果中央或用户计算机中有一个被攻破,那么其安全性就受到了威胁。

1.2 RSA签名

RSA密码系统为每个用户分配两对密钥(公钥和私钥),RSA是最流行的一种加密标准,许多产品的内核中都有RSA的软件和类库。RSA与Microsoft、IBM、Sun和Digital都签订了许可协议,使在其生产线上加入了类似的签名特性。RSA既可以用来加密数据,也可以用于身份认证。和Hash签名相比,公钥系统中,由于生成签名的密钥只存储于用户的计算机中,安全系数大一些。

1.3DSS签名

DSS和RSA采用了公钥算法,不存在Hash的局限性。DSS数字签名是由美国国家标准化研究院和国家安全局共同开发的。由于它是由美国政府颁布实施的主要用于与美国政府做生意的公司,其他公司则较少使用。安全Hash标准(SHS)作为数字签名标准(DSS)的标准加密报文算法。SHS密文采用160位,比采用128位密文的MD5更安全。

2 数字签名的工作流程

数字签名是建立在公开密钥加密体制的基础上的,根据数字签名标准DSS,可分为以下几个步骤:

1)发送方选择合适的单向散列函数,产生报文的单向散列值。

单向散列函数是一种根据数据报文计算出固定长度比特序列的方法。单向散列函数建立在压缩函数的想法上,它的安全性是它的单向性,常用的单向散列函数有MD5和SHA算法。MD5以512位分组处理输入文件,产生一个128位散列值。SHS规定了一种保证数字签名算法(DSA)安全所必须的安全散列算法(SHA)。当输入是长度小于264位的消息时,SHA产生160位的消息摘要,然后将该摘要输入到用于计算该消息签名的DSA中。由于是对散列而不是对文件进行签名,可大大改善处理效率。

2) 发送方用自己的私人密钥对散列加密,即利用DSA算法进行计算,产生数字签名。

3) 将散列签名和报文一起发送给接收方。

接收方用同样的单向散列函数(预先协商好的算法)产生报文的散列,然后用数字签名算法对散列进行运算,产生数字签名1,同时用公开密钥对签名的散列解密,产生数字签名2。若数字签名1=数字签名2,则签名得到验证。

3 数字签名技术与加密技术的结合

在实际应用中,如果信息是公开的,必须保证信息不被伪造(如:网页信息),则可利用数字签名技术来保证信息的完整性及不可伪造性。把公开密码学和数字签名结合起来,能够产生一个协议,这样可把签名的真实性和加密的安全性结合起来,先签名后加密,远比先加密后签名的安全性要高。

令发送方为Amy,接收方为Bob。PKA和SKA为Amy的公共密钥和私有密钥,PKB和SKB为Bob的公共密钥和私有密钥。签名过程如下:

1) Amy用DSA算法和自己的私钥SKA对消息M计算,产生数字签名S;

2) Amy用Bob的公共密钥PKB对签名的消息(M+S)加密,然后发送给Bob:EPKB(M+S);

3) Bob用他的私钥SKB才能解密,产生DSKB(EPKB(M+S))=M+S;

4) Bob用DSA算法和Amy的公钥PKA对消息M进行计算,产生一个数字签名X',若X=X',则签名有效。

4 文件的多重签名

随着网络技术的发展,数字签名技术也在不断发展,在一对一安全通信的基础上,可实现在OA系统中对文件的多重签名。令发送方(按签名顺序)为A1、A2、A3……An,接收方为B,PKAi和SKAi分别为Ai的公钥和私钥,PKB和SKB分别为B的公钥和私钥,发送的消息为M。

多人签名步骤如下:

1) A1用DSA算法和A1的私钥SKA1对M进行计算,产生签名X1,并用下一位签名人A2的公钥PKA2对(M+X1)进行加密,产生EPKA2(M+X1),并发送给A2;

2) A2收到后,用他的私钥SKA2对消息摘要解密,产生DSKA2(EPKA2(M+X1))=M+X1,并用DSA算法和前一位签名人A1的公钥PKA1对前一签名人的X1进行验证,若不能验证,则签名终止,并进行下一步;

3) A2把(M+X1)当作新的消息M2,用DSA算法和自己的私钥SKA2产生新的签名X2,并用后一位签名人A3的公钥PKA3加密,产生EPKA3(M2+X2),并发送给后一位签名人A3;

4) A3按照步骤(2)~(3)处理,每个签名人依次处理,直到最后的签名人An签名完成,产生最终签名Xn以及最终的消息Mn.;

5) 最后An用接收者B的公钥对(Mn+Xn)加密,产生EPKB(Mn+Xn),并发送给B。

多人签名验证步骤如下:

1) B收到后,用他的私钥SKB对消息解密,产生DSKB(EPKB(Mn+Xn)=Mn+Xn;

2) B用DSA算法和An的公钥PKA n对Mn进行计算,得到一个数字签名Xn′;

3) 如果Xn≠Xn′,验证失败,验证过程终止;

4) 按步骤(1)~(3)进行验证,直至M和X1通过验证,则整个签名算法成功。

5 Internet上建立信息安全机制

SSL通过使用公开密钥和对称密钥技术的有效结合达到信息的保密性,SSL客户机和服务器之间的信息处理业务都采用在SSL握手过程中建立的密钥和算法进行加密,既有认证机构的保证,又实现了一次一密的随机加密,大大提高了加密强度,可有效地防止网络窃听。所采用的算法有DES、TripleDES、IDEA、RC2、RC4等。

1) SSL支持认证机制,通信者的身份认证采用公开密钥系统,采用的算法有:RSA,DSS。

2) SSL通信采用机密共享和Hash函数组提供信息完整,确保SSL业务全部达到目的。SSL通信还传送保证数据完整性的数据识别码(MAC Code),数据识别码采用MD5、SHA算法。

利用SSL技术对应用服务器和客户进行身份认证,用加密技术对Web服务器与用户之间的传输数据加密。它包括用DES、RC4、IDEA或专用密码算法进行传输加密,数据完整性校验和身份验证,安全的审计和记录等等,是整个安全管理和控制的前台。

客户端为IE浏览器,使用SSL安全在浏览器和服务器端各设一个转接站,传输的数据先经过安全加解密后再进行传输。

6 结束语

数字签名只是一种身份确认的方式,传统签名用手写识别,数字签名用密码确认,两者在交互中的作用并无区别。数字签名技术是信息安全领域的一项重要技术,是实现信息安全传输的重要手段之一,其应用领域日益广泛。在某种意义上,数字签字系统比手签字或印章更为有效。一份多页的手签文件很难保证每页的内容均不会被改动或替换,但数字签字却能保证文件的每一字符都未经过任何改动。由于许多领域对数字签名技术提出了新的应用需求,在未来的信息领域中这一技术仍有着广阔的发展前景。

参考文献:

[1] 刘启源,刘怡.数据库与信息系统的安全[M].北京:科学出版社,2000.

第8篇

[关键词] 数字签名电子商务安全

电子商务是利用Internet进行的各项商务活动,主要包括非支付型和支付型两种业务类型。电子商务改变了传统的交易方式,它通过网络使企业面对整个世界,所带来的商机是巨大而深远的。目前,随着Internet的迅猛发展,电子商务已成为国际商务活动的一种崭新模式。这种新型的贸易方式以其特有的成本低、易于参与、对需求反映迅速等优势,已被愈来愈多的国家及不同行业所接受和使用。由于电子商务所依托的Internet的全球性和开放性,电子商务的影响也是全面的,它不仅在微观上影响企业的经营行为和消费者的消费行为,而且在宏观上也影响到国际贸易关系和国家未来竞争力。

然而,互联网所固有的开放性与资源共享性使电子商务成为一把双刃剑,它在给人类带来了经济、便捷、高效的交易方式的同时,也使商务活动的安全性受到严重挑战。电子商务的安全问题已成为全球电子商务活动的焦点问题,如何保证网上交易的有效性、机密性、完整性、可靠性和不可否认性是电子商务可持续发展的关键。

一、电子商务的安全性需求

目前,电子商务普遍存在信息在传输过程中被窃取、被篡改、伪造电子邮件干扰正常交易、假冒他人身份、抵赖已经发生的业务等多种安全隐患。针对这些安全威胁,电子商务安全性要求应包括以下几个方面。

1.保密性。电子商务作为贸易的一种手段,其信息直接代表着个人、企业或国家的商业机密,因此,必须保证数据不被非授权方非法访问,加密的信息不会被破译。保密性又主要分为数据存储保密性和数据网络传输的保密性。

2.完整性。保证电子交易过程中所有存储和管理的信息不被非法篡改,保证目的信息和源信息相一致。保护电子支付完整性的主要途径有:协议、纠错编码方法、密码校验、数字签名、公证等。

3.有效性。有效防止延迟和拒绝服务情况的发生,保证交易数据在确定的时刻、确定的地点是真实、有效的。

4.可靠性。保证合法用户对信息和资源的使用不会被不正当地拒绝。电子支付系统通过提供对用户身份的鉴别方法,实现系统对用户身份的有效确认,确保用户身份信息的合法、可靠。

5.不可抵赖性。通过建立有效的责任机制,使得交易双方对于自己已经发送或者接收的数据不能事后否认,从而有效防止支付欺诈行为的发生。

6.可控性。交易发生的整个过程都是可控的,有明确的责权关系和相互制约关系,能够切实保障各方利益不受损害。

二、数字签名技术及其原理

在电子商务活动中,如何鉴别交易伙伴身份、确定合同、契约和单据的可靠性是十分关键的问题。这就出现了数据真实性认证问题,数字签名技术也就应运而生了。

数字签名是用来保证信息传输过程中信息的完整性、私有性和不可抵赖性,是实现网上交易安全的核心技术之一,在信息安全,包括身份认证、数据完整性、不可否认性以及匿名性等方面有重要应用,特别是在大型网络安全通信中的密钥分配、认证以及电子商务系统中都具有重要作用。

1.数字签名的概念。数字签名(Digital Signatures),就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名。数字签名是目前电子商务、电子政务中应用最普遍、技术最成熟、可操作性最强的一种电子签名方法。它采用了规范化的程序和科学化的方法,用于鉴定签名人身份以及对一项电子数据内容的认可。它还能验证出文件的原文在传输过程中有无变动,确保传输电子文件的完整性、真实性、和不可抵赖性。

在ISO7498-2标准中,数字签名被定义为“附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被进行伪造。美国电子签名标准对数字签名作了如下解释:利用一套规则和一个参数对数据进行计算得到结果,用此结果能够确认签名者的身份和数据的完整性。

按上述定义,PKI(Public Key Infrastruction,公钥基础设施)可以提供数据单元的密码变换,并能使接收者判断数据来源及对数据进行验证。

2.数字签名技术原理。首先发送方对信息施以数学变换,所得的信息与原信息唯一对应;在接收方进行逆变换,得到原始信息。只要数学变换方法优良,变换后的信息在传输中就具有很强的安全性,很难被破译、篡改。这一过程称为加密,对应的反变换过程称为解密。

现在有两类不同的加密技术,一类是对称加密,双方具有共享的密钥,只有在双方都知道密钥的情况下才能使用。另一类是非对称加密,也称为公开密钥加密,密钥是由公开密钥和私有密钥组成的密钥对,用私有密钥进行加密,利用公开密钥可以进行解密,但是由于公开密钥无法推算出私有密钥,所以公开的密钥并不会损害私有密钥的安全,公开密钥无需保密,可以公开传播,而私有密钥必须保密,丢失时需要报告鉴定中心。

目前的数字签名技术采用的就是这种公钥密码技术。即利用两个足够大的质数与被加密原文相乘产生的积来加/解密。这两个质数无论是用哪一个与被加密的原文相乘(模乘),即对原文件加密,均可由另一个质数再相乘来进行解密。但是,若想用这个乘积来求出另一个质数,就要对大数进行质因子分解,分解一个大数的质因子是十分困难的,若选用的质数足够大,这种求解几乎是不可能的。因此,将这两个质数称为密钥对,其中一个采用私密的安全介质保密存储起来,应不对任何外人泄露,简称为“私钥”;另一个密钥可以公开发表,用数字证书的方式在称之为“网上黄页”的目录服务器上,用LDAP协议进行查询,也可在网上请对方发送信息时主动将该公钥证书传送给对方,这个密钥称之为“公钥”。

公钥密码体制下的数字签名技术实际上是通过一个单向Hash函数[4]来实现的。信息的发送方从信息文本中生成一个128位的散列值(或消息摘要)。发送方用自己的私人密钥对这个散列值进行加密形成发送方的数字签名。然后,这个数字签名将作为信息的附件和信息一起发送给信息的接收方。信息的接收方首先从接收到的原始信息中计算出128位的散列值(消息摘要),接着再用发送方的公用密钥来对信息附加的数字签名进行解密。如果两个散列值相同,那么接收方就能确认该数字签名是发送方的。

三、数字签名技术的实现方法

1.数字签名方法。建立在公开密钥体系基础上的数字签名方法有很多,RSA签名、DSS签名及Hash签名等。其中Hash签名是目前电子商务安全中最主要的数字签名方法。

Hash签名[4]也称之为数字摘要法(Digital Digest)或数字指纹法(Digital Finger Print)。该数字签名方法是将数字签名与要发送的信息紧密联系在一起,它更适合于电子商务活动。将一个商务合同的个体内容与签名结合在一起,比合同和签名分开传递,更增加了可信度和安全性。数字摘要加密方法亦称安全Hash编码法(SHA:Secure Hash Algorithm)或MD5(MD Standard For Message Digest),由RonRivest所设计。该编码法采用单向Hash函数将需加密的明文“摘要”成一串128bit的密文,这一串密文亦称为数字指纹(Finger Print),它有固定的长度,且不同的明文摘要必定一致。这样这串摘要使可成为验证明文是否是“真身”的“指纹”了。

2.数字签名的文件传输过程。只有加入数字签名及验证的文件才能真正实现在网络上的安全传输。其传输过程如下:

(1)发送方首先用哈希函数从原文得到数字签名,然后采用公开密钥体系用发送方的私有密钥对数字签名进行加密,并把加密后的数字签名附加在要发送的原文后面。(2)发送方选择一个密钥对文件进行加密,并把加密后的文件通过网络传输到接收方。(3)发送方用接收方的公开密钥对秘密密钥进行加密,并通过网络把加密后的秘密密钥传输到接收方。(4)接受方使用自己的私有密钥对密钥信息进行解密,得到秘密密钥的明文。(5)接收方用秘密密钥对文件进行解密,得到经过加密的数字签名。(6)接收方用发送方的公开密钥对数字签名进行解密,得到数字签名的明文。(7)接收方用得到的明文和哈希函数重新计算数字签名,并与解密后的数字签名进行对比。如果两个数字签名是相同的,说明文件在传输过程中没有被破坏。

如果第三方冒充发送方发出了一个文件,因为接收方在对数字签名进行解密时使用的是发送方的公开密钥,只要第三方不知道发送方的私有密钥,解密出来的数字签名和经过计算的数字签名必然是不相同的。这就提供了一个安全的确认发送方身份的方法。

安全的数字签名使接收方可以得到保证:文件确实来自声称的发送方。鉴于私钥只有发送方自己保存,他人无法做一样的数字签名,因此他不能否认他参与了交易。

四、数字签名技术在电子商务中的应用

将数字签名技术应用于电子商务中,可以有效解决数据的否认、伪造、篡改及冒充等问题,其主要用途有三个方面:

1.验证数据的完整性。这个功能能保证信息自签发后到收到为止没有做任何修改。因为当两条信息摘要完全相同时,可以确信这两条信息的内容完全一样。因此,可以通过将信息发送前生成的信息摘要与接收后生成的信息摘要进行对比,来判断信息在传输过程中是否被篡改或改变。由于信息摘要在发送之前,发送方使用私钥进行加密,其他人要生成相同加密的信息摘要几乎不可能,于是,接受方收到信息后,可以使用相同的函数变换,重新生成―个新的信息摘要,将接收到的信息摘要解密,然后进行对比,从而验证信息的完整性。

2.验证签名者的身份。此功能证明信息是由签名者发送的。因为数字签名中,是使用公开密钥加密算法,信息发送方是使用自己的私钥对发送的信息进行加密的,只有持有私钥的人才能对数据进行签名,所以只要密钥没有被窃取,就可以肯定该数据是用户签发的。信息接收方可以使用发送方的公钥对接受到的信息进行解密,因而,接收方一旦解密成功,就完全可以确认信息是由发送方发送的,同时也证实了信息发送方的身份。

3.防止交易中的抵赖行为。当交易中出现抵赖行为时,信息接收方可以将加了数字签名的信息提供给认证方,由于带有数字签名的信息是由发送方的私钥加密生成的,其他任何人不可能产生这种信息,而发送方的公钥是公开的,任何人都可以获得他的公钥对信息解密。这样认证方可以使用公钥对接收方提供的信息解密,从而可以判断发送方是否出现抵赖行为。

数字签名技术具有良好的防伪造、防篡改、防拒认的功能,在电子商务领域中实现了传统意义上签名的功能,已经成为保障电子商务安全交易的关键技术之一。

五、结束语

数字签名技术在电子商务活动中能有效解决否认、伪造、篡改及冒充等问题,但电子商务安全问题不仅仅是技术问题,还涉及到法律、道德、管理等诸多方面的因素。毫无疑问,随着电子商务的蓬勃发展,数字签名技术也将不断成熟,为商务活动和人们的生活提供可靠、便利的服务。然而,我国数字签名技术的研究和应用才刚刚起步,与国际先进水平还有一定差距。在数字签名技术的应用过程中不可避免地会带来一些问题,需要进一步加以解决。目前,还没有一种电子商务安全的完整解决方案和完整模型与体系结构,我们离安全电子商务还有一段很长的距离,所以,需要不断地研究探索,从而逐步完善电子商务系统的安全机制,有力推动电子商务以及其他网上业务的发展。

参考文献:

[1]谢红燕:电子商务的安全问题及对策研究[J].哈尔滨商业大学学报(自然科学版),2007,(3):350~358

[2]刘亚松:电子商务概论[M].机械工业出版社,2005

[3]杨波:现代密码学[M].北京:清华大学出版社,2007

[4](美)Trappe等著:密码学概论[M].邹红霞等译,北京:人民邮电出版社,2004,(6):90~91

第9篇

【关键词】混沌序列;LSB;图像;隐藏

1.数字印章的需求和背景

电子商务中,通过Internet进行贸易时,协议、合同、要约都是以电子公文的形式存在,而不是传统意义上的“白纸黑字”了。如何才能确保接收到的电子公文式真实、准确、完整的呢?

同样,在电子政务中,大量的公文、证件、批示、请示、管理、决策等机密信息以各种常用的电子文档第形式存在。如何才能真正抛弃将电子文档打印后纸上签章的传统思维,实现完全意义的无纸化电子政务呢?要想实现电子商务、电子政务乃至军事信息化办公平台,必须实现安全、可靠、便捷的数字形式的签名,并在法律上赋予同传统印章相同的地位。目前,国内外普遍采用经典意义上的“数字签名”技术来保证文档内容的完整性和签署者身份的证明。利用数字签名技术可以保证电子文档的完整性和不可抵赖性,但其缺点是一般用户不易理解,可视文化程度有待提高。

如能将数字签名以“数字水印”的方式隐藏在印章图片当中,则可以使印章显得更为直观,更贴近实际。数字水印和数字签名相结合产生的数字印章技术为安全便捷的电子公文认证的实现提供了新思路:文件发送方在Word、Excel、PDF等各类电子文档上中加上数字印章;验证方可通过验证模块,精确鉴别文件发送方的身份以及文件内容的真实性与完整性。

2.数字印章与传统数字签名的区别

数字印章与传统的数字签名相比,具有以下突出优势:

(1)数字签名信息是明文传输的,而数字印章结合数字水印技术,将数字签名信息隐藏在印章图片中,增强了签名的安全性。

(2)数字印章将数字签名以印章图片的形式直观显示,签盖印章的过程如同传统意义上的盖章,符合人们的使用习惯。

(3)数字印章中应用数字水印,解决了电子文档和物理文档的矛盾。签盖了数字印章的文档所打印出来的物理文档,重新扫描之后形成电子文档,使用水印检测工具,仍然能够将印章图片中的数字签名信息提取出来,从而进行有效认证。

在数字印章产品逐渐走向成熟的同时,也有一些非常重要的问题值得重视:

(1)数字印章产品作为重要的信息安全产品,缺乏有效统一的规范管理。

(2)缺乏行业技术标准,这些产品没有统一的技术标准和规范,缺乏统一的数据和应用接口标准。

(3)数字印章产品本身的安全性应该得到权威部门的统一认证。

3.数字印章的技术实现

数字印章系统通过一套标准化、规范化的软硬结合系统,使用户可以在电子文件上完成签字盖章。与传统的签字盖章类似,需要解决否认、伪造、篡改及冒充等问题。具体的要求如下:

(1)发送者事后不能否认电子公文的数字印章。

(2)接收者能够核实发送者发送的电子公文的数字印章。

(3)接收者不能伪造发送者的电子公文的数字印章。

(4)接收者不能对发送者的电子公文进行篡改。

(5)某一用户不能冒充另一用户作为发送者。

因此,数字印章并非是传统千字盖章的数字图像化,而是一种融合了数字签名、PKI、数字水印等多种信息安全技术的数字产品。数字印章的实现需要以下技术支撑:

(1)数字签名技术

数字签名是不对称加密算法的典型应用,它就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人伪造。一个数字签名,就是一段被发送者的私钥加密的数据段,而接收者只有拥有发送者的公钥才能解密这个数据段。完整的数字签名过程包括签名和验证两部分。在数字印章系统中,签名者对电子报文的摘要采用私钥加密后作为数字签名,并采用数字水印嵌入算法融入印章图像中。

(2)PKI技术

PKI是建立在公钥密码体制和先进的密钥管理基础之上的为网络安全提供认证服务的基础设施。它能够为所有网络应用透明地提供采用加密和数字签名等密码服务所必须的密钥和证书管理。PKI由认证机关(CA)、证书库、密钥备份及恢复服务、证书作废处理服务、客户端证书处理系统等基本要素组成。在数字印章系统中,CA认证中心既是传统印章系统中的仲裁机构,又是PKI证书的签发机构,它是数字印章系统的核心机构。CA的数字签名保证了数字印章的合法性和权威性。

(3)数字水印技术

采用数字水印技术可将签名信息以水印的形式嵌入到印章图像中,将签名水印信息和电子公文自然融合。较之一般的数字签名,有其固有优势:①安全可靠。数字签名信息是明文传输的,而数字印章结合数字水印技术,将数字签名信息隐藏在印章图片中,增强了签名的安全性。②直观形象。数字印章将数字签名以印章图片的形式直观显示,签盖印章的过程如同传统意义上的盖章,更符合使用习惯。③访问控制。与访问控制结合,可有效控制电子公文的访问、修改与打印权限,并在公共数据库中存储了数字印章加盖记录、修改记录以及公文的打印记录。

目前,数字印章多采用鲁棒性水印作为底层水印嵌入版权和签名信息,以保证版权信息提取的准确性。也可再将脆弱水印嵌入印章图片,是印章的第二层水印,为印章图像提供完整性认证保护。

签章方用户加盖数字印章的过程如下:

(1)签章方用户根据摘要算法生成原始电子公文的摘要。

(2)签章方用户从证书中提取自己的私钥,采用非对称加密算法将摘要加密,对原始电子公文进行数字签名。

(3)签章方用户提取自己的印章图像,采用数字水印技术将(2)中的数字签名作为水印信息嵌入到印章图像中。

(4)签章方用户将印章图像嵌入到原始电子公文中,得到签章后的电子公文。

验证方用户的认证过程如下:

(1)验证方用户从签章后的电子公文中提取印章。

(2)验证方用户采用数字水印提取算法从印章中提取签名信息。

(3)验证方用户利用获取签章用户的公钥,解密签名信息得到摘要。

(4)验证方用户根据摘要算法生成电子公文的摘要。

(5)验证方用户对比(3)和(4)中生成的摘要,如果二者匹配则电子公文合法;否则,电子公文不合法。

4.数字印章实现要点

与一般的数字水印相比,数字印章所采用的数字水印技术具有以下突出特点:

(1)安全性要求高

印章中的水印存储的信息是公文的数字签名、签署时间、签署者信息等重要内容。在数字印章公开暴露的情况下,要防止非法用户篡改甚至移除签章信息。

(2)鲁棒性要求高

印章图像要能经受非法打击。部分场合甚至要求打印后重扫描的印章图像仍然能够对公文进行认证。

(3)正确率要求高

水印提取时,必须保证提取的信息达到0比特误差。

在数字印章中,水印信息就是数字签名信息、进行签名认证所必要的信息、版权信息,通常包括以下主要内容:

(1)数字签名信息

隐藏到水印当中的数字签名字段内容,就是对文档进行散列这之后再采用非对称加密得到的数字签名信息。目前,采用的主流算法是MD5算法得到128位摘要。

(2)签名者身份标识

为了让验证用户知道盖章盖章人的身份,需要在水印信息中包含身份标识字段。该字段预留64位。

(3)盖章时间

印章签盖的时间是水印信息的重要组成部分。该部分信息是一个DateTime型,即64位。

3个字段总长度为256位,然后采用RSA加密算法生成印章的数字签名,得到的信息位为256位。

5.小结

在常见的电子印章解决方案中,经常把私钥和印章置于USB Key中。该USB Key带有内部计算功能,并可将密钥和印章存储在安全存储区中,保证密钥永不出USB Key。摘要信息输入给USB Key后,USB Key对摘要信息进行签名计算后输出签名信息。这种方式的优势在于安全性高、成本低、携带方便。

参考文献

[1]付兵.一种增加LSB信息隐藏量的方法[J].长江大学学报(自然版),2009,3(4):73-74.

[2]司银女,康宝生.一种自适应的数字图像信息隐藏算法[J].计算机应用与软件,2011,25(9):49-50.

[3]陈燕梅.数字图像加密与信息隐藏的研究[D].福建师范大学,2012.

第10篇

以网络技术为基础的电子商务作为一种全新的商务活动模式,已经成为经济增长的动力,推动着经济的迅猛发展。但互联网所固有的开放性与资源共享性使电子商务成为一把双刃剑,它在给人类带来了经济、便捷、高效的交易方式的同时,也引发了新的社会问题,电子商务的安全交易问题已成为全球电子商务活动的焦点问题,如何保证网上交易的有效性、机密性、完整性、可靠性和不可否认性是电子商务可持续发展的关键。

电子商务交易中,鉴别交易伙伴身份、确定合同、契约和单据的可靠性是十分关键的问题。在传统贸易中,交易双方通过在合同、贸易单据等书面文件上手写签名或盖章来鉴别对方的身份,确定贸易合同、契约、单据的可靠性并预防抵赖行为的发生,其具有较高的可靠性。而在无纸化的电子商务中,人们希望通过数字通信网络迅速传递合同、契约和单据,这就出现了数据真实性认证的问题,数字签名技术就应运而生了。

数字签名是用来保证信息传输过程中信息的完整性、私有性和不可抵赖性,其是实现网上交易安全的核心技术之一。

一、数字签名技术的概念

数字签名技术就是利用数据加解密技术、数据变换技术,根据某种协议来产生一个反映被签署文件和签署人特性的数字化签名。数字签名涉及被签署文件和签署人两个主体,密码技术是数字签名的技术基础,其核心是采用加密技术的加、解密算法体制来实现对数据的数字签名。

1.公开密钥加密技术

公开密钥加密又称为非对称密钥加密,其特点是每个用户有两个不同的密钥:公有密钥和私有密钥,分别用于加密和解密,如果用公有密钥对数据进行加密,只有用对应的私有密钥才能进行解密;如果用私有密钥对数据进行加密,则只有用对应的公有密钥才能解密。其中公有密钥是公开的,而私有密钥是保密的。

公开密钥加密的关键在于公有密钥和私有密钥是数学相关的,但不能从公钥推导出私钥,也不能从私钥推导出公钥。

公开密钥加密的优点是便于密钥的管理和分发,便于通信加密和数字签字。但公开密钥加密的算法相对复杂,加密数据速度较慢。

2.hash算法

hash算法又称为散列算法或报文摘要,hash算法并不是加密算法,但却能产生信息的数字“指纹”,主要用途是为了确保数据没有被篡改或发生变化,以维护数据的完整性。Hash算法有三个特点:(1)能处理任意大小的信息,并生成固定长度(160bit)的信息摘要。(2)具有不可预见性。信息摘要的大小与原信息的大小没有任何联系。原信息内容的任何一个微小变化都会对信息摘要产生很大的影响。(3)具有不可逆性。没有办法通过信息摘要直接恢复原文信息。

3.数字签名

数字签名是指使用密码算法对要传输的数据进行加密处理,生成一段信息,附着在原文上一起发送,这段信息类似现实中的签名或印章,接收方对其进行验证,判断原文真伪,其目的是提供数据的完整性保护和抗否认功能。

实现数字签名的方法很多,目前使用较多的是比较容易实现的公开密钥加密技术。其是先将要发送的信息通过hash算法形成信息摘要,然后用发送方的私钥加密,再将生成的结果附加到原信息上去,就形成了原信息的数字签名。接收方收到数字签名和原信息后,用发送方的公钥将信息摘要解密,将原信息通过hash算法生成新的信息摘要。将两个信息摘要进行对比,若相同则表明这份数字签名和文件是正确的,否则文件就是伪造的或已被篡改。 二、数字签名技术在电子商务中的应用

将数字签名技术应用于电子商务中,可以解决数据的否认、伪造、篡改及冒充等问题,其主要用途有三个方面:

1.验证数据的完整性

这个功能能保证信息自签发后到收到为止没有做任何修改。因为当两条信息摘要完全相同时,可以确信这两条信息的内容完全一样。因此,可以通过将信息发送前生成的信息摘要与接收后生成的信息摘要进行对比,来判断信息在传输过程中是否被篡改或改变。由于信息摘要在发送之前,发送方使用私钥进行加密,其他人要生成相同加密的信息摘要几乎不可能,于是,接受方收到信息后,可以使用相同的函数变换,重新生成—个新的信息摘要,将接收到的信息摘要解密,然后进行对比,从而验证信息的完整性。

2.验证签名者的身份

此功能证明信息是由签名者发送的。因为数字签名中,是使用公开密钥加密算法,信息发送方是使用自己的私钥对发送的信息进行加密的,只有持有私钥的人才能对数据进行签名,所以只要密钥没有被窃取,就可以肯定该数据是用户签发的。信息接收方可以使用发送方的公钥对接受到的信息进行解密,因而,接收方一旦解密成功,就完全可以确认信息是由发送方发送的,同时也证实了信息发送方的身份。

3.防止交易中的抵赖行为

当交易中出现抵赖行为时,信息接收方可以将加了数字签名的信息提供给认证方,由于带有数字签名的信息是由发送方的私钥加密生成的,其他任何人不可能产生这种信息,而发送方的公钥是公开的,任何人都可以获得他的公钥对信息解密.这样认证方可以使用公钥对接收方提供的信息解密,从而可以判断发送方是否出现抵赖行为。

第11篇

关键词:数字签名;电子政务;信息安全

数字签名是防止他人对传输的文件进行破坏.以及确定发信人的身份的手段该技术在数据单元上附加数据,或对数据单元进行秘密变换.这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,从而达到保护数据,防止被人进行伪造的目的。简单说来,数字签名是指用密码算法,对待发的数据进行加密处理,生成一段数据摘要信息附在原文上一起发送,接受方对其进行验证,判断原文真伪,其签名思想是签名只能南一个人(个体)创建,但可以被任何人校验。

数字签名技术可以解决数据的否认、伪造、篡改及冒充等问题,满足上述要求的数字签名技术有如下主要功能:(1)发送者事后不能否认自己发送的签名;(2)接收者能够核实发送者发送的签名;(3)接收者不能伪造发送者的签名;(4)接收者不能对发送者的原文进行篡改;(5)数据交换中的某一用户不能冒充另一用户作为发送者或接收者。

1.数字签名与传统手写签名差别

1.1签署文件方面:一个手写签名是所签文件的物理部分,而数字签名不是,所以要使用其他的办法将数字签名与所签文件“绑定”。

1.2验证方面:一个手写签名是通过和一个真实的手写签名相比较来验证的而数字签名是通过一个公开的验证算法来验证:

1.3签名的复制:一个手写签名不容易被复制,因为复制品通常比较容易被鉴别来:而数字签名很容易被复制,因为一个文件的数字签名的复制品和原文件是一样的:所以要使用数字时问戳等特殊的技术避免数字签名的重复使用。

1.4手书签名是模拟的,且因人而异。数字签名是0和1的数字串,因人和消息而异。

2基于身份的数字签名

2.1优势。1984年Shamir提出基于身份的加密、签名、认证的设想,其中身份可以是用户的姓名、身份证号码、地址、电子邮件地址等。系统中每个用户都有一个身份,用户的公钥就是用户的身份,或者是可以通过一个公开的算法根据用户的身份可以容易地计算出来,而私钥则是由可信中心统一生成。在基于身份的密码系统中,任意两个用户都可以安全通信,不需要交换公钥证书,不必保存公钥证书列表,也不必使用在线的第三方,只需一个可信的密钥发行中心为每个第一次接入系统的用户分配一个对应其公钥的私钥就可以了。基于身份的密码系统不存在传统CA颁发证书所带来的存储和管理开销问题。

2.2形式化定义。基于身份的数字签名由以下4个算法组成,如图1所示。Setup(系统初始化):输入一个安全参数k,输出系统参数param、和系统私钥mk,该算法由密钥产生机构PKG运行,最后PKG公开params,保存mk。Extract(用户密钥生成):输入params、mk和用户的身份ID,输出用户的私钥diD,该算法由PKG完成,PKG用安全的信道将diD返回给用户。Sign(签名):输入一个安全参数r、params、diD以及消息M,输出对}肖息M的签名盯,该算法由用户实现。Verify(验证):输入params、签名人身份ID、消息m和签名,输出签名验证结果1或0,代表真和伪,该算法由签名的验证者完成。其中,签名算法和验证算法与一般签名方案形式相同。

3数字签名在电子政务中的应用

3.1意义。数字签名的过程和政务公文的加密/解密过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也各不相同。数字签名使用的是发送方的密钥对,发送方用自己的私钥进行加密,接收方用发送方的公钥进行解密。这是一个一对多的关系,即任何拥有发送方公钥的人都可以验证数字签名的正确性。政务公文的加密/解密则使用接收方的密钥对,这是多对一的关系,即任何知道接收方公钥的人都可以向接收方发送加密公文,只有唯一拥有接收方私钥的人才能对公文解密。在实际应用过程中,通常一个用户拥有两个密钥对,一个密钥对用来对数字签名进行加密,解密;另一个密钥对用来对公文进行加密懈密,这种方式提供了更高的安全性。

3.2个人单独签名. 由于政务公文的文件相对来说都比较大,所以一般需要先对所要传输的原文进行加密压缩后形成一个文件摘要,然后对这个文件摘要进行数字签名。一般由两个阶段组成:对原文的数字签名和对数字签名的验证。

(1)对原文的数字签名。先采用单向散列哈希算法对所要传输的政务公文x进行加密计算和压缩,推算出一个文件摘要z。然后,公文的发送方用自己的私钥SKA对其加密后形成数字签名Y,并将该数字签名附在所要传送的政务公文后形成一个完整的信息包(X+Y)。再用接收方的公钥PKB对该信息包进行加密后,通过网络传输给接收方。

(2)对数字签名的验证。接收方收到该信息包后,首先用自己的私钥SKB对整个信息包进行解密,得到两部分信息:数字签名部分Y和政务公文原文部分x;其次,接收方利用发送方的公钥PKA对数字签名部分进行解密,得到一个文件摘要Z;接着,接收方也采用单向散列哈希算法对所收到的政务公文原文部分进行加密压缩,推算出另外一个文件摘要z1。由于原文的任何改动都会使推算出的文件摘要发生变化,所以只要比较两个文件摘要z和z1就可以知道公文在传输途中是否被篡改以及公文的来源所在。如果两个文件摘要相同,那么接收方就能确认该数字签名是发送方的,并且说明文件在传输过程中没有被破坏。通过数字签名能够实现对原始报文的鉴别。

参考文献:

[1]徐晓林,杨锐.电子政务[M].武汉:华中科技大学出版社.2009.

第12篇

前景及如何提升安全、效率等方面进行了分析,认为RSA算法和DES算法相结合的数据加密和数字签名方法将使电子商务更安全、快速,并把运行代价降低。

[关键词] 数字签名技术;RSA 算法;DES加密技术;公钥加密技术;安全性;电子商务

[中图分类号] F062.5 [文献标识码] A [文章编号] 1006-5024(2007)09-0069-03

[作者简介] 胡淑红,江西科技师范学院大专部讲师,研究方向为计算机与电子商务;

黄 云,江西科技师范学院大专部副教授,研究方向为计算机与电子商务;

刘 芳,江西师范大学数信学院讲师,研究方向为计算机与电子商务。(江西 南昌 330028)

电子商务是一种依托现代信息技术和网络技术,集金融电子化、管理信息化、商贸信息网络化为一体,旨在实现物流、资金流与信息流和谐统一的新型贸易方式。随着世界市场经济体制的不断完善和计算机网络技术的不断发展,以网络化、知识管理、全球化为主要特征的新经济已成为不可逆转的趋势,电子商务成为世界经济的关键内容,但是由于Internet充分的开放性、管理松散和不设防的特点,给交易的安全性带来了挑战。如何保证网上传输数据的安全和交易对方的身份确认是电子商务能否得到推广的关键,数字签名(Digital Signa-tures)则是实现推广的有效手段,在保证数据的完整性、私有性、不可抗抵赖性方面起着重要的作用,具备签字方不能抵赖、他人不能伪造、在公证人面前能够验证真伪的能力。

2005年4月1日,《中华人民共和国电子签名法》正式实施,美国《国际与国内贸易电子签名(Electronic Signatures 或ESign)法》的通过,确立了数字签名的合法地位, 为电子商务交易又扫除了一道障碍。

一、数字签名的原理

所谓“数字签名”就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替书写签名或印章。数字签名系统是公开密钥加密技术与报文分解函数相结合的产物。报文的发送方通过一个单向Hash函数对要传送的报文进行处理得到用以认证报文来源并核实报文是否发生变化的一个128位的散列值(报文摘要(Message Digest)),然后采用公开密钥体系用自己的私有密钥对此进行加密形成数字签名,并把这个数字签名附加在要发送的原文后面。报文的接收方首先从接收到的原始报文中计算出128位的散列值(报文摘要),接着再用发送方的公用密钥(发送方的公钥可以由一个可信赖的技术管理机构即认证中心(CA))来对报文附加的数字签名进行解密,如果两个报文摘要相同,就能确认该数字签名是发送方的;如果文件被改动,或者有人在没有秘密钥匙的情况下冒充签字,解密出来的数字签名和经过计算的数字签名必然是不相同的,都将使数字签名的鉴定过程失败。

数字签名是通过密码算法对数据进行加、解密变换实现的,常见的加密方法有传统的私钥加密技术和公钥加密技术两大类,分别以DES 和RSA 算法为代表。

二、基于RSA算法的数字签名在电子商务中的应用

公钥加密技术也叫非对称密码体制,该技术就是针对私钥密码体制的缺陷被提出来的。在公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥向公众公开,解密密钥只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,故其可称为公钥密码体制。

实现数字签名有很多方法,1994年美国标准与技术协会公布了数字签名标准使公钥加密技术得到广泛应用,目前数字签名采用较多的是公钥加密技术,如RSA 、DSA(Digital Signature Algorithm)、x.509、PGP(Pretty Good Privacy)等。

其中,RSA签名是基于数论的公钥算法的典型代表,由麻省理工学院Ron Rivest、Adi Shamir、Len Adleman于1978年提出,第一个能同时用于加密和数字签名的算法,建立在大整数分解的困难上的,是一种分组密码体制。RSA算法中数字签名技术实际上是通过一个Hash函数来实现的,把文件的二进制码相累加,取最后的若干位,文件如果发生改变,数字签名的值也将发生变化,不同的文件将得到不同的数字签名。RSA是最流行的一种加密标准,许多产品的内核中都有RSA的软件和类库,RSA与Microsoft、IBM、Sun和Digital都签订了许可协议,使在其生产线上加入了类似的签名特性。

1.RSA签名

(1)RSA算法基本原理

①RSA的安全性依赖于大数分解,公钥和私钥都是两个大素数的函数。寻找两个大素数:p和q,并计算出其乘积n(n=pq),p和q为发送方私有。为了提高安全性,两个素数的长度要求一样。

②随后计算出n的欧几里得算法φ(n)=(p-1)(q-1),φ(n)定义为不超过n并与n互素的数的个数。 ③从[0,φ(n)-1]中随机选取加密密钥e,使得e和φ(n)互为素数。 ④计算出满足公式ed=1modφ(n)中的d,d为解密密钥。 ⑤若用整数M表示明文,整数C表示密文(M,C均小于n),则加解密运算为: 加密:C=Memodn 解密:M=Cdmodn 其中:d和n也互素、e和n是公开密钥、d和n是秘密密钥。

(2)实现过程

①发送方发送散列值M时,先用自己的私钥d1对报文进行加密,产生密文d1(M);再用接收方的公钥e2进行第二次加密,产生密文e2(d1(M))。

②接收方收到密文后,先用自己的私钥d2进行第一次解密,还原出密文d1(M),即d2(e2(d1(M)))=d1(M);再用发送方的公钥e1进行第二次解密,得到明文M',即e1(d1(M))=M',若M'=M,则能确认该数字签名是发送方的。 RSA数字签名体制必须同时使用收、发双方的私钥d1和公钥e1才能获得原文(明文),也才能完成发送方的身份认证和接收方无法伪造或篡改报文的功能。因为只有发送方才有其私钥d1,所以,只要能用其公钥e1还原,发送方就无法否认所发送的报文。

2.参数选择。RSA系统安全性与系统的参数有很大关系,为保证电子商务运行的安全性,X.931标准对此提出:

(1)如果公钥e是奇数,e应与p-1,q-1互质;如果公钥e是偶数,e必须与(p-1)/2,(q-1)/2互质,且poq mod 8不成立。

(2)模数的长应该为1024+256x,x=0,1 。

(3)p-1,q-1,p+1,q+1应有大质数因子,gcd(p-1,q-1)应该小。

(4)p/q不应靠近两个小整数比值,且|p-q|应有大质数因子。

3.注意事项

(1)随机选择足够大素数(目前应在512位以上),如果有条件,采用规模差别比较大的质因子p,q来提高系统的安全性。

(2)解密密钥d相对模数n来说不应过小。

(3)加密密钥应该大;或者被加密的信息m总是大,而且m不能是一些已知值的乘积,后面一种情况可以在加密前对m填充随机值实现。

(4)相关的消息不能用同样的密钥加密,加密前对消息进行随机值填充破坏消息之间的代数联系及相关性,但是要注意填充算法的选择。

(5)被签名的消息应该与模数差不多大,而且不是一些已知值的乘积。

三、基于DES算法的私钥密码技术在电子商务中的应用

私钥密码技术是一种传统的密码技术,也称为对称密码技术。在对称加密系统中,加密和解密采用相同的密钥。因为加解密密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。

对机密信息进行加密和验证随报文一起发送报文摘要(或散列值)来实现。比较典型的算法有DES(Data Encryption Stan-dard数据加密标准)算法及其变形Triple DES(三重DES),GDES(广义DES);欧洲的IDEA;日本的FEAL N、RC5等。

DES(Data Encryption Standard)算法是对称密码技术的典型代表,是最著名、使用广泛的美国数据加密标准,由IBM公司在1970年以后发展起来的,于1976年11月被美国政府采用,DES随后被美国国家标准局和美国国家标准协会(American National Standard Institute,ANSI)承认使用。

1.使用参数。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。

2. DES算法描述。如Mode为加密,则用Key去把数据Data(报文)进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,保证了电子商务的核心数据在公共通信网中传输的安全性和可靠性。

通过定期在通信网络的源端和目的端同时改用新的Key,便能更进一步提高数据的保密性,这正是现在电子商务的流行做法。

3.安全性。DES算法具有极高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,DES算法中只用到64位密钥中的其中56位。而56位长的密钥的穷举空间为256,这意味着如果一台计算机的速度是每一秒种检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间,这是难以实现的,但随着计算机技术的迅猛发展,需把DES密钥的长度再增长一些,密钥的长度越大,破解难度就越大,相对来说越安全。

四、DES算法和RSA算法结合的数据加密和数字签名

DES算法和RSA算法是数据加密中久经考验的比较优秀的算法,但仍在处理效率、密钥管理等方面存在着不足。将两种算法结合起来,设计一综合保密系统,实现更具实效数据加密和数字签名。

该系统中用DES 算法作为数据的加密算法对数据进行加密,RSA 算法作为DES 密钥的加密算法对DES 的密钥进行加密。其中DES算法采用密码分组链接工作方式。这样,用DES 对大量数据进行加密、解密速度快,不影响整个系统的效率,用RSA 算法得到DES的密钥后就可进行身份验证,因此,整个系统保密的RSA 的密钥量并不大(只有46k),只要对其做一二个分组的加密就可完成对DES的密钥的处理,不会影响系统效率。

数字签名过程:发送方将报文用DES加密,并将DES对称密钥用接受方的RSA公钥加密,将密文一起发给接受方。接受方收到报文后,先用其密钥打开密文,得到发送方的DES对称密钥,再用此对称密钥去解开数据。只有用接受方的RSA密钥才能够打开此密文,确保了接受方的身份真实。

该密钥系统既能发挥DES 算法加密效率高、速度快,安全性好,适用于加密大量数据的场合的优点;又能发挥RSA算法密钥管理方便、安全性高、可实现数字签名的优点;各取所长,致使电子商务更安全、快速,运行代价降低。

五、数字签名技术在电子商务中引发的思考

数字签名技术的前景越来越广阔,同时带来的问题也越来越引发深思。

2000年1月举行的第六届国际密码学会议对应用于公开钥密码系统的加密算法推荐:基于大整数因子分解难题的RSA算法和基于椭圆曲线上离散对数计算难题的ECC算法。因此,基于RSA算法的数字签名技术还有一定的发展空间。

数字签名是目前电子商务中应用最普遍、技术最成熟、可操作性最强的应用技术,越来越得到人们的重视,其中它涉及到的关键技术也很多,并且很多新的协议,如网上交易安全协议SSL、SET协议都会涉及到数字签名,究竟使用哪种算法,以及数字签名管理、在通信实体与可能有的第三方之间使用协议等等问题都可以作为新的课题。

随着对电子商务的深入研究,人们逐渐认识到还需要通过技术与制度的结合,建立一套完整的预防和控制体系。给予数字签名以传统签名、盖章同等的法律地位,是数字签名得以广泛应用和发挥功效的前提,也是近10年来国际电子商务立法的核心内容。但是法律只能提供一个基本的保障,《电子签名法》可以在一定程度上提高诚信度,但是要更好地促进电子商务的发展,最主要的还是要建立一个高信用度的诚信环境,这需要电子商务网站及电子商务交易主体在未来付出更大的努力。

六、结束语

安全是电子商务的核心和灵魂, 没有安全保障的电子商务应用只是虚伪的炒作或欺骗,数字签名技术是实现电子商务交易安全的核心保障技术,保证电子商务中数据传输的安全性、完整性,实施身份验证机制以及交易的不可抵赖措施,推动了电子商务的发展。但目前实现数字签名用到的公钥加密技术还有一定不足,改进数字签名的安全技术措施,提高对称密钥体制和公开密钥体制完美的结合的数据加密和数字签名技术,数据加密技术更加完善,数字签名更加安全、快速、省耗才能致使电子商务在新时期更加迅猛发展,使电子商务走向世界经济格局更核心地位。

参考文献:

[1]凌捷.计算机资料安全技术[M].北京:科学出版社,2004.

[2]李晓霞,刘青.基于RSA算法的数字签名技术在电子商务中的应用[J].计算机知识与技术, 2005,(35).

[3]陈风,张利萍.RSA算法及其在电子商务中的应用[J].铁路计算机应用,2003,(6).

[4]王玉奇.基于RSA的电子商务数字签名技术[J].经济师,2005,(5).

[5]张淑芬,陈学斌,刘春风. RSA公钥密码体制的安全性分析及其算法实现[J]. 计算机应用与软件,2005,(7).

[6]王宏杰. RSA算法、DES算法的特点分析及结合[J]. 天津科技,2005,(4).

[7]李凤慧.电子商务中的数字签名技术[J].商场现代化,2006,(14).