第3章数字签名技术_第1页
第3章数字签名技术_第2页
第3章数字签名技术_第3页
第3章数字签名技术_第4页
第3章数字签名技术_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章数字签名技术

内容提要数字签名概述

常规数字签名方法特殊数字签名方法数字签名法律2023/1/121本章要点数字签名特点:难否认、可防假冒、可仲裁。数字签名使用模式:智慧卡式、密码式和生物测定式。常用数字签名方案:RSA数字、Hash签名、美国数字签名标准、椭圆曲线数字签名。特殊签名方法:盲签名、双联签名、团体签名、不可争辩签名、代理签名、数字时间戳等。数字签名法律的内涵、立法原则、特点和现状。2023/1/122数字签名概述数字签名的概念及特点

数字签名的功能

数字签名方案的分类

数字签名使用模式

数字签名使用原理

2023/1/123数字签名的概念及特点

数字签名是通过一个单向函数对要传送的信息进行处理得到的用以认证信息来源并核实信息在传送过程中是否发生变化的一个字母数字串。数字签名提供了对信息来源的确定并能检测信息是否被篡改。

数字签名的特点:数字签名与书面文件签名有相同之处,采用数字签名能确认以下三点:第一,信息是由签名者发送的;第二,信息自签发后到收到为止未曾作过任何修改;第三,如果A否认对信息的签名,可以通过仲裁解决A和B之间的争议。因此数字签名就可用来防止电子信息因易被修改而有人作伪,或冒用别人名义发送信息,或发出(收到)信件后又加以否认等情况发生。数字签名和手写签名的区别:数字签名随文本的变化而变化,手写签字反映个人特征,是不变的;数字签名与文本信息是不可分割的,而用手写签字是附加在文本之后的,与文本信息是分离的。

2023/1/124数字签名的功能(1)身份认证:收方通过发方的电子签名能够确认发方的确切身份,但无法伪造。(2)保密:双方的通信内容高度保密,第三方无从知晓。(3)完整性:通信的内容无法被篡改。(4)不可抵赖:发方一旦将电子签字的信息发出,就不能再否认。2023/1/125数字签名方案的分类1.基于数学难题的分类(1)基于离散对数问题的签名方案,如ElGamal和DSA。(2)基于素因子分解问题的签名方案,如RSA。(3)上述两种的结合签名方案。2.基于签名用户的分类(单个用户和多个用户)3.基于数字签名所具有特性的分类(1)不具有自动恢复特性的数字签名方案,如ElGamal。(2)具有消息自动恢复特性的数字签名方案4.基于数字签名所涉及的通信角色分类(1)直接数字签名(仅涉及通信的源和目的两方)(2)需仲裁的数字签名(除通信双方外,还有仲裁方)2023/1/126数字签名使用模式(1)智慧卡式(2)密码式(3)生物测定式2023/1/127数字签名使用原理2023/1/128利用散列函数进行数字签名和验证的文件传输过程(1)发送方首先用哈希函数从原文得到数字摘要,然后采用公开密钥体系用发送方的私有密钥对数字摘要进行签名,并把签名后的数字摘要附加在要发送的原文后面。(2)发送一方选择一个秘密密钥对文件进行加密,并把加密后的文件通过网络传输到接收方。(3)发送方用接收方的公开密钥对秘密密钥进行加密,并通过网络把加密后的秘密密钥传输到接收方。(4)接收方使用自己的私有密钥对密钥信息进行解密,得到秘密密钥的明文。(5)接收方用秘密密钥对文件进行解密,得到通过加密的数字摘要。(6)接收方用发送方的公开密钥对数字签名进行解密,得到数字摘要的明文。(7)接收方用得到的明文和哈希函数重新计算数字摘要,并与解密后的数字摘要进行对比。如果两个数字签名是相同的,说明文件在传输过程中没有被破坏。2023/1/129第三章数字签名技术

内容提要数字签名概述

常规数字签名方法特殊数字签名方法数字签名法律2023/1/1210RSA数字签名系统RSA算法中数字签名技术实际上是通过一个哈希函数来实现的。数字签名的特点是它代表了文件的特征,文件如果发生改变,数字签名的值也将发生变化。不同的文件将得到不同的数字签名。一个最简单的哈希函数是把文件的二进制码相累加,取最后的若干位。哈希函数对发送数据的双方都是公开的。用RSA或其它公开密钥密码算法的最大方便是没有密钥分配问题(网络越复杂、网络用户越多,其优点越明显)。因为公开密钥加密使用两个不同的密钥,其中有一个是公开的,另一个是保密的。公开密钥可以保存在系统目录内、未加密的电子邮件信息中、黄页(商业)上或公告牌里,网上的任何用户都可获得公开密钥。而私有密钥是用户专用的,由用户本身持有,它可以对由公开密钥加密信息进行解密。2023/1/1211RSA数字签名的步骤(1)使用散列编码将发送文件加密产生固定长的数字摘要。(2)发送方用自己的专用密钥对摘要进行再加密,形成数字签名。(3)将原文和加密的摘要同时传给对方。(4)接收方用发送方的公共密钥对摘要解密,同时对收到的文件用散列编码加密产生同一摘要。(5)将解密后的摘要和收到的文件再接收方重新加密产生的摘要互相对比验证。2023/1/1212Hash签名Hash签名是最主要的数字签名方法,也称之为数字摘要法(DigitalDigest)或数字指纹法(DigitalFingerPrint)。它与RSA数字签名是单独的签名不同,该数字签名方法是将数字签名与要发送的信息紧密联系在一起,它更适合于电子商务活动。将一个商务合同的个体内容与签名结合在一起,比合同和签名分开传递,更增加了可信度和安全性。Hash函数主要用于完整性校验和提高数字签名的有效性。比较典型的Hash算法有MD2、MD4、MD5、SHA-1算法等。美国将SHA-1作为Hash标准,欧盟RIPE计划中采用IRIPE-MD算法、RIPEMAC,俄罗斯国家标准中采用GOST算法。2023/1/1213一个Hash函数满足:①H可以作用于一个任意长度的数据块;②H产生一个固定长度的输出;③H(x)对任意给定的x计算相对容易,无论是软件还是硬件实现;④对任意给定码h,找到x满足H(x)=h具有计算不可行性;⑤对任意给定的数据块x,找到满足H(y)=H(x)的y具有计算不可行性;⑥找到任意数据对(x,y),满足H(x)=H(y)是计算不可行的。2023/1/1214用Hash函数实验签名的方案发送方X:准备消息M,计算其散列码H(M),用X的私钥对散列值构成签名Kx-1[H(M)],并将消息M及签名Kx-1[H(M)]发送给Y接收方Y:对收到的消息M′计算用H(M′),利用公钥解密Kx-1[H(M)],然后比较Kx[Kx-1[H(M)]]和H(M′),如果Kx[Kx-1[H(M)]]=

H(M′),则签名得到验证。2023/1/1215美国数字签名标准(DSA)数字签名算法(DigitalSignatureAlgorithm,DSA)是Schnorr和ElGamal签名算法的变种,由美国国家标准化技术研究院(NIST)和国家安全局共同开发。DSA是基于离散对数的难度。

2023/1/1216一、DSA算法参数说明DSA算法中应用了下述参数:p:Lbits长的素数。L是64的倍数,范围是512到1024;q:p-1的160bits的素因子;g:g=hp-1modp,h满足h<p-1,h(p-1)/qmodp>1;x:1<x<q,x为私钥;y:y=gxmodp,(p,q,g,y)为公钥;H(x):单向Hash函数。在DSS中选用安全散列算法(SecureHashAlgorithm,SHA)。p,q,g:可由一组用户共享,但在实际应用中,使用公共模数可能会带来一定的威胁。2023/1/1217二、签名及验证协议签名及验证协议如下:①P产生随机数k,k<q;②P计算

r=(gkmodp)modq和s=(k-1(H(m)+xr))modq签名结果是(m,r,s)。③验证时计算

w=s-1modq计算u1=(H(m)*w)modq计算u2=(r*w)modq计算v=((gu1*yu2)modp)modq若v=r,则认为签名有效。2023/1/1218DSS签名和验证2023/1/1219椭圆曲线数字签名算法(ECDSA)椭圆曲线加密系统是一种运用RSA和DSA来实施的

数字签名方法。基于椭圆曲线的数字签名具有与RSA数字签名和DSA数字签名基本上相同的功能,但实施起来更有效,因为椭圆曲线数字签名在生成签名和进行验证时要必RSA和DSA来得快。椭圆曲线数字签名还可以用在一些较小、对资源有一定限制得设备如智能卡(含有微处理器芯片得塑料片)中。2023/1/1220第三章数字签名技术

内容提要数字签名概述

常规数字签名方法特殊数字签名方法数字签名法律2023/1/1221特殊数字签名方法盲签名双联签名团体签名不可争辩签名多重签名方案代理签名数字时间戳2023/1/1222盲签名一般数字签名中,总是要先知道文件内容而后才签署,这正是通常所需要的。但有时需要某人对一个文件签名,但又不让他知道文件内容,称为盲签名,它是由Chaum在1983年最先提出的。在选举投票和数字货币协议中会使用到。利用盲变换可以实现盲签名。盲签名的基本原理:

(1)A取一文件并以一随机值乘之,称此随机值为盲因子(2)A将此盲文件发送给B;(3)B对盲文件签名;(4)A以盲因子除之,得到B对原文件的签名Chaum将盲变换看做是信封,盲文件是对文件加个信封,而去掉盲因子的过程是打开信封的过程。文件在信封中时无人可读,而在盲文件上签名相当于在复写纸信封上签名,从而得到了对起文件(信封内容)的签名。2023/1/1223用RSA算法实现盲签名第一个盲签名是Chaum在1985年用RSA算法实现的。下面设定签名者B的公钥参数为e,私钥参数为d,而模为n。下面A让B进行盲签名,签署消息M:(1)A盲变换:选用盲因子k,1<k<M,计算:

t=Mkemodn,将t传送给B(2)B签名:B对t进行签名,计算S(t)=td=(Mke)dmodn,将签名S(t)传送给A;(3)A取得签名:A计算后取得签名

S=td/kmodn=Mdmodn2023/1/1224双联签名在一次电子商务活动过程种可能同时有两个有联系的消息M1和M2,要对它们同时进行数字签名。例如,客户A有两个消息,一个是送银行B的有关付款帐号信息,即消息M1,另一个是给厂商C的定购信息即消息M2;但要求交送银行B的数字签名不应知道M2,送厂商C的数字签名不应知道M1。双联签名的使用方法如下:(1)客户A将给银行的信息M1和给厂商的信息M2分别生产报文摘要MD1和MD2(2)客户A将MD1和MD2合在一起生产MD,并签名(3)客户A将M1、MD2和MD发送给银行,将M2、MD1和MD发送给厂商2023/1/1225团体签名团体签名具有以下特性:①只有该团体内的成员能对消息签名;②签名的接收者能够证实消息是该团体的有效签名。③签名的接收者不能决定是该团体内哪一个成员签的名;④在出现争议时,签名能够被“打开”,以揭示签名者的身份。采用单向Hash函数,团体签名是容易实现的:①A对文件的hash签名。②B对文件的hash签名。③B将他的签名交给A。④A把文件、签名和B的签名发给C。⑤C验证A和B的签名。A和B能同时或顺序地完成①和②,在⑤C可以只验证其中一人的签名而不用验证另一人的签名。

2023/1/1226一个简单的团体签名协议介绍一个简单的协议来完成团体签名。该协议使用了一个可信赖的第三方,假设该团体有n个成员下面简单的描述该协议的步骤:(1)第三方产生nxm对密钥(公钥私钥对);然后给每一个成员m对互异的密钥(2)第三方把nxm个公钥用随机的顺序加以公开,作为团体的公钥表;并要第三方记住每—个成员对应哪m对密钥(3)当团体中某—个成员签名时,从自己的m个私钥中随机选择一个,进行签名(4)而验证签名时,用该团体的公钥表进行签名认证即可(5)当发生争议时,第三方知道密钥对与成员之间的对应关系,所以可以确定出签名者是团体中哪一个成员当然,上述协议的较大缺陷在于需要—个第三方。2023/1/1227无可争辩签名不可争辩签名是在没有签名者自己的合作下不可能验证签名的签名。无可争辩签名是为了防止所签名文件被复制,有利于产权拥有者控制产品的散发。不可争辩签名1989年由Chaum和Antwerpen引入,这类签名有一些特点,适用于某些应用,如电子出版系统,以利于对知识产权的保护。在签名人合作下才可能验证签名,又会给签名者一种机会,在不利于他时可拒绝合作,因而不具有“不可否认性”。不可争辩签名除了一般签名体制中的签名算法和验证算法(或协议)外,还需要第三个组成部分,即否认协议;签名者利用不可争辩签名可向法庭或公众证明一个伪造的签名的确是假的;但如果签名者拒绝参与执行否认协议,就表明签名真的由他签署。2023/1/1228多重签名多重数字签名的目的是将多个人的数字签名汇总成一个签名数据进行传送,签名收方只需验证一个签名便可确认多个人的签名。多重数字签名方案可分为两类:有序多重数字签名方案广播多重数字签名方案。设U1,U2,…,Un为n个签名者,他们的密钥分别为xi,相应的公钥为yi=gximodp(i=1,2,…,n)。他们所形成的对消息m的n个签名分别为(ri,si),其中ri=gkimodp和si=xim+kirmodp-1(i=1,2,…,n),这里r=rimodp,形成的签名(ri,si)满足方程gsi=yimrirmodp。n个签名人最后形成的多重签名为:(m,r,s)=(m,rimodp,simodp-1),它满足方程gs=ymrrmodp,其中y=yimodp。2023/1/1229代理签名代理签名(ProxySignature)是指定某人代替自己签署,也称为委托签名。由此就引来问题,如何在不把自己的私钥给代理人的情况下,而使代理人又替代自己完成签名的功能。代理签名一般应具有如下特点:可区分性,代理签名与某人的通常签名是可以区分的不可伪造性,只有原来的签名者和所托付的代理人可以建立合法的代理签名代理签名的差异,代理签名者不可能制造一个合法的代理签名,而不被检查出来其是一个代理签名可证实性,从代理签名中,验证者能够相信原始的签名者认同了这份签名的消息可识别性,原始签名者可以从代理签字结果中识别出代理签名者的身份不可抵赖性,代理签名者不能事后抵赖他所建立的已被认可的代理签名代理签名从授权的程度上来划分,可以分为三类:完全授权、部分授权、许可授权2023/1/1230数字时间戳如果在签名时加上一个时间标记,即是有数字时间戳(digitaltimestamp)的数字签名。DTS是网上电子商务安全服务项目之一,能提供电子文件的日期和时间信息的安全保护,由专门机构提供。时间戳(time-stamp)是一个经加密后形成的凭证文档,它包括三个部分:①需加时间戳的文件的摘要(digest);②DTS收到文件的日期和时间;③DTS的数字签名。2023/1/1231获得数字时间戳的过程2023/1/1232数字时间戳协议必须具有如下性质①数据本身必须有时间标记,而与它所用的物理媒介无关。②不存在哪怕改变文件的1个比特而文件时间戳却没有明显变化的情形。③不可能用不同于当前日期和时间的日期和时间来签署文件。2023/1/1233第三章数字签名技术

内容提要数字签名概述

常规数字签名方法特殊数字签名方法数字签名法律2023/1/1234数字签名法律的内涵联合国《电子商务示范

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论