电子签名系统安全性.doc
- 文档编号:2483015
- 上传时间:2022-10-30
- 格式:DOC
- 页数:11
- 大小:148.12KB
电子签名系统安全性.doc
《电子签名系统安全性.doc》由会员分享,可在线阅读,更多相关《电子签名系统安全性.doc(11页珍藏版)》请在冰豆网上搜索。
计算机科学与技术学院
《物联网信息安全》
结业论文
专业物联网工程
班级
姓名
学号
日期2
电子签名系统安全性分析
(湖北科技学院计算机科学与技术学院湖北咸宁)
摘要:
智能化是电子产品的未来发展方向。
电子商务以其高效、便捷、低成本的优势,因而使电子签名取代了手写签名。
但是电子商务建立在开放的、不安全的网络基础上,因此安全性成为其发展的首要因素。
文章分析了电子签名系统中的实现技术和利用非对称加密算法RSA保证其安全性,以及电子签名系统的应用前景做出了一些可行的总结。
关键字:
电子签名;RSA;应用前景
Analysisofsignaturesystemsecurityandapplicationprospectofelectronic
YuYuan
(HubeiUniversityofscienceandTechnology,Schoolofcomputerscienceandtechnology,XianningHubei)
Abstract:
Intelligentisthefuturedevelopmentdirectionofelectronicproducts.Theelectroniccommercewithitsefficient,convenient,lowcostadvantage,sothattheelectronicsignatureinsteadofahandwrittensignature.Bute-commercebasedonnetworkopen,unsafe,sosecuritybecomesthemostimportantfactorofitsdevelopment.BasedontheanalysisoftheelectronicsignaturesystemimplementationtechniquesandtheuseofnonsymmetricencryptionalgorithmRSAtoensuretheirsafety,andapplicationprospectoftheelectronicsignaturesystemmadesomefeasiblesummary.
Keywords:
Electronicsignature;RSA;applicationprospect
0引言
为了确保传输的安全性,不得不采取一系列的安全技术,如数字签名、加密技术、密钥管理、防火墙、身份认证、安全协议等。
其中数字签名就是电子商务的核心技术之一,它可以保证信息传输的完整性、发送信息的不可否认性和不可抵赖性、交易者身份的确定性等。
1数字签名
1.1数字签名概述
数字签名是电子商务安全担当非常重要的角色。
随着电子商务的高速发展,电子签名的使用越来越频繁。
所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。
这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。
它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。
密码技术是数字签名的技术基础,基于公钥密码体制和私钥密码体制都可以获得数字签名,现在主要运用是基于公钥密码体制的数字签名。
1.2数字签名的特点
(1)签名者事后不能抵赖自己的签名;
(2)确认信息自签名后到收到为止,未被修改过;
(3)如果双方关于签名的真伪发生争执,能够在公正的仲裁者面前通过验证签名来鉴别其真伪。
1.3数字签名的原理
数字签名采用了双重加密的方法来实现防伪、防赖。
其原理为:
(1)被发送文件用SHA编码加密产生128bit的数字摘要。
(2)发送方用自己的私钥对摘要再加密,这就形成了数字签名。
(3)将原文和加密的摘要同时传给对方。
(4)对方用发送方的公共密钥对摘要解密,同时对收到的文件用SHA编码加密产生又一摘要。
(5)将解密后的摘要和收到的文件在接收方重新加密产生的摘要相互对比。
如两者一致,则说明传送过程中信息没有被破坏或篡改过。
否则不然。
1.4数字签名的作用
数字签名机制作为保障网络信息安全的手段之一,可以解决伪造,抵赖和篡改问题。
数字签名的目的之一,就是在网络环境中代替传统的手工签字与印章,其可抵御的网络攻击主要有:
1)防冒充。
其他人不能伪造对消息的签名,因为私有密钥只有签名者自己知道,所以其他人不可以构造出正确的签名结果数据。
显然要求各位保存好自己的私有密钥,好像保存自己家门的钥匙一样。
2)可鉴别身份。
网上交易的双方很可能素昧平生,相隔千里。
对于商家要确认客户端不是骗子,而客户也要相信网上的商店不是一个玩弄欺诈的黑店,因此能方便而可靠地确认对方的身份是网上交易的前提。
为顾客或用户开展服务的银行、信用卡公司和销售商店,为了做到安全、保密、可靠地开展服务活动,都需要进行身份认证的工作。
对有关的销售商店来说,他们不知道顾客的信用卡号码,只能把信用卡的确认工作完全交给银行来完成。
银行和信用卡公司可以采用各种保密与识别方法来确认顾客的身份是否合法、确认订货和订货收据信息同时还要注意防止发生拒付款等问题。
3)防篡改(防破坏信息的完整性)。
传统的手工签字,假如要签署一本200页的合同,是仅仅在合同末尾签名呢还是对每一页都有签名,不然,对方会不会偷换其中几页这些都是问题所在。
而数字签名,如前所述:
签名与原有文件已经形成了一个混合的整体数据,不可能篡改,从而保证了数据的完整性。
4)防重放。
如在日常生活中,A向B借了钱,同时写了一张借条给B;当A还钱的时候,肯定要向B索回他写的借条撕毁,不然,恐怕他会再次挟借条要求A再次还钱。
在数字签名中,如果采用了对签名报文添加流水号,时戳等技术,可以防止重放攻击。
5)防抵赖。
,数字签名可以鉴别身份,不可能冒充伪造,那么,只要保存好签名的报文,就好似保存好了手工签署的合同文本,也就是保留了证据,签名者就无法抵赖。
以上是签名者不能抵赖,那如果接受者确已收到对方的签名报文,却抵赖没有收到呢?
要预防接受者的抵赖,在数字签名体制中,要求接受者返回一个自己签名的表示收到的报文,给对方或者是第三方,或者引入第三方机制。
如此操作,双方均不可抵赖。
6)信息传输的保密性。
有了机密性保证,截收攻击也就失效了。
手工签字的文件(如合同文本)是不具备保密性的,文件一旦丢失,文件信息就极可能泄露。
数字签名,可以加密要签名的消息。
当然,签名的报文如果不要求机密性,也可以不用加密。
2电子签名技术中的函数和加密算法
数字签名技术是结合消息摘要函数和公钥加密算法的具体加密应用技术。
数字签名(DigitalSignature)指一个用自己的非对称密码算法私钥加密后的信息摘要,附在消息后面;别人得到这个数字签名及签名前的信息内容,使用该用户分发的非对称密码算法公钥,就可以检验签名前的信息内容在传输过程或分发过程中是否己被篡改并且可以确认发送者的身份。
2.1MD5函数
MD5是RonRivest设计的单向散列函数,MD表示消息摘要。
MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
在MD5算法中,首先需要对信息进行填充,使其字节长度对512求余的结果等于448。
因此,信息的字节长度(BitsLength)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。
填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。
然后,在在这个结果后面附加一个以64位二进制表示的填充前信息长度。
经过这两步的处理,现在的信息字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍。
这样做的原因是为满足后面处理中对信息长度的要求。
MD5中有四个32位被称作链接变量(ChainingVariable)的整数参数,他们分别为:
A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210。
当设置好这四个链接变量后,就开始进入算法的四轮循环运算。
循环的次数是信息中512位信息分组的数目。
将上面四个链接变量复制到另外四个变量中:
A到a,B到b,C到c,D到d。
主循环有四轮(MD4只有三轮),每轮循环都很相似。
第一轮进行16次操作。
每次操作对a、b、c和d中的其中三个作一次非线性函数运算,然后将所得结果加上第四个变量,文本的一个子分组和一个常数。
再将所得结果向右环移一个不定的数,并加上a、b、c或d中之一。
最后用该结果取代a、b、c或d中之一。
以一下是每次操作中用到的四个非线性函数(每轮一个)。
F(X,Y,Z)=(X&Y)|((~X)&Z)
G(X,Y,Z)=(X&Z)|(Y&(~Z))
H(X,Y,Z)=X^Y^Z
I(X,Y,Z)=Y^(X|(~Z))
(&是与,|是或,~是非,^是异或)
这四个函数的说明:
如果X、Y和Z的对应位是独立和均匀的,那么结果的每一位也应是独立和均匀的。
F是一个逐位运算的函数。
即,如果X,那么Y,否则Z。
函数H是逐位奇偶操作符。
假设Mj表示消息的第j个子分组(从0到15),<
FF(a,b,c,d,Mj,s,t)表示a=b+((a+(F(b,c,d)+Mj+ti)<
GG(a,b,c,d,Mj,s,t)表示a=b+((a+(G(b,c,d)+Mj+ti)<
HH(a,b,c,d,Mj,s,t)表示a=b+((a+(H(b,c,d)+Mj+ti)<
II(a,b,c,d,Mj,s,t)表示a=b+((a+(I(b,c,d)+Mj+ti)<
2.2对称密钥密码学算法
对称算法有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。
在大多数对称算法中,加密和解密的密钥是相同的。
这些算法也叫秘密密钥算法。
它要求发送者和接受者在安全通讯之前,商定一个密钥。
对称算法的安全性依赖于密钥,泄露秘钥就意味着任何人都能对消息进行加解密。
只要通讯需要保密,密钥就必须保密。
著名的对称分组加密算法包括:
DES、3DES、RC5、IDEA及AES等。
加密变换
解密变换
密文
密钥K
明文
明文
密钥K
对称加密过程
2.3非对称加密算法
RSA密码体制是美国麻省理工学院(MIT)Rivest、Shamir、Adleman于1978年提出来的,它是第一个理论上最为成功的公开密钥密码体制。
到目前为止,RSA是使用最广泛的公开密钥算法,在世界上许多地方RSA已经成为事实上的标准。
它的安全性基于数论中的Euler定理和计算复杂性理论中的论断:
求两个大素数的乘积是很容易的,但要分解两个大素数的乘积,求出它们的素数因子却是非常困难的。
RSA密码体制是一种幂模运算的加密体制。
要构造RSA解密算法中的公钥和私钥,必须首先构造两个大素数。
RSA解密算法的安全性与所使用的大素数有密切关系。
因此,研究RSA公钥体制中的大素数生成,构造符合RSA安全体系要求的强素数,是实现RSA算法的基础。
2.3.1RSA算法原理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 签名 系统 安全性
![提示](https://static.bdocx.com/images/bang_tan.gif)