[计算机软件及应用]计算机系统安全课件 第5章 数字签名技术

上传人:繁星 文档编号:88338532 上传时间:2019-04-24 格式:PPT 页数:59 大小:2.88MB
返回 下载 相关 举报
[计算机软件及应用]计算机系统安全课件 第5章   数字签名技术_第1页
第1页 / 共59页
[计算机软件及应用]计算机系统安全课件 第5章   数字签名技术_第2页
第2页 / 共59页
[计算机软件及应用]计算机系统安全课件 第5章   数字签名技术_第3页
第3页 / 共59页
[计算机软件及应用]计算机系统安全课件 第5章   数字签名技术_第4页
第4页 / 共59页
[计算机软件及应用]计算机系统安全课件 第5章   数字签名技术_第5页
第5页 / 共59页
点击查看更多>>
资源描述

《[计算机软件及应用]计算机系统安全课件 第5章 数字签名技术》由会员分享,可在线阅读,更多相关《[计算机软件及应用]计算机系统安全课件 第5章 数字签名技术(59页珍藏版)》请在金锄头文库上搜索。

1、第5章 数字签名技术,5.1 数字签名的基本原理 5.2 数字签名标准(DSS) 5.3 RSA签名 5.4 DSS签名方案 5. 5 盲签名及其应用 5.6 多重签名及其应用 5.7 定向签名及其应用 5.8 世界各国数字签名立法状况 5.9 数字签名应用系统与产品,返回目录,5.1 数字签名的基本原理,5.1.1 数字签名与手书签名的区别 5.1.2 数字签名的组成 5.1.3 数字签名的应用,返回本章首页,5.1 数字签名的基本原理,数字签名就是以电子形式存在于数据信息之中的,或作为其附件的或逻辑上与之有联系的数据,可用于辨别数据签署人的身份,并表明签署人对数据信息中包含的信息的认可。

2、数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。 数字签名是个加密的过程,数字签名验证是个解密的过程。,返回本章首页,5.1.1 数字签名与手书签名的区别,1. 数字签名的要求: (1)收方能够确认或证实发方的签名,但不能伪造。 (2)发方发出签名的消息送收方后,就不能再否认他所签发的消息。 (3)收方对已收到的签名消息不能否认,即有收到认证。 (4)第三者可以确认收发双方之间的消息传送,但不能伪造这一过程。,返回本节,2. 数字签名与手书签名的区别 (1) 手书签名是模拟的,且因人而异。 (2) 数字签名是0和1

3、的数字串,因消息而异。 (3) 消息认证使收方能验证消息发送者及所发消息内容是否被篡改过。 (4) 数字签名技术可解决收者和发者之间有利害冲突时的纠纷。,返回本节,3. 数字签名与传统签名的区别 (1) 传统签名是消息的一部分,被签名的文件和签名不应该分开,而数字签名与消息可以绑定在一起发送或传输,也可以分开发送或传输。 (2) 传统签名的验证需要与已知的另一份签名进行比较来进行,而数字签名的验证仅仅通过验证算法就可以实现。 (3) 传统签名是不容易复制的,而数字签名的复制不受限制,可以方便的存储签名、复制签名和分发签名。,返回本节,5.1.2 数字签名的组成,1.数字签名的二大类 (1)对整

4、个消息的签名。 (2)对压缩消息的签名。 它们都是附加在被签名消息之后或某一特定位置上的一段签名图样。,返回本节,2. 数字签名再按明、密文的对应关系分类,前述两种数字签名的分类又可分为 (1) 确定性数字签名 其明文与密文一一对应,它对特定消息的签名不变化(使用签名者的密钥签名),如RSA、ElGamal等签名。 (2) 随机化的或概率式数学签名, 它对同一消息的签名是随机变化的,取决于签名算法中的随机参数和取值。,3. 签名体制的组成 (1) 组成一:签名算法 (2) 组成二:验证算法 (3) 原理 对M 的签名可简记为 Sig (M)=s ,而对s的证实简记为Ver(s)真,伪0,1。,

5、 签名算法或签名密钥是秘密的,只有签名人掌握。证实算法应当公开,以便于他们进行验证。(和加密的RSA算法刚好相反) 一个签名体制可由量(M,S,K,V)表示,其中M是明文空间, S是签名的集合, K是密钥空间, V证实函数的值域,由真、伪组成。, 对于每一k K ,有一签名算法,易于计算 s = Sigk (m) S 。利用公开的证实算法: Verk (s,m) 真,伪 可以验证签名的真伪。 对每一m M,真签名Sigk (m) S 为 M S 的映射。易于证实S是否为M的名。 Verk (s,m) = 真,当Sigk (s,m)满足验证方程 伪,当Sigk (s,m)不满足验证方程,返回本节

6、,5.1.3 数字签名的应用,(1) 用数字签名对文档进行标识,为文档附上电子时间标签。 (2) 电子贸易、电子支票、电子货币、电子汇款使用电子签名。 (3) 大范围的商业应用 (4) 数据库的保护,返回本节,5.2 数字签名标准(DSS),5.2.1 关注DSS 5.2.2 DSS的发展,返回本章首页,5.2.1 关注DSS,1.数字签名标准(DSS) 在1991年8月30日,美国国家标准与技术学会(NIST)联邦注册书上发表了一个通知,提出了一个联邦数字签名标准,NIST称之为数字签名标准(DSS)。,返回本节,2. DSS的作用 DSS提供了一种核查电子传输数据及发送者身份的一种方式。

7、NIST提出:“此标准适用于联邦政府的所有部门,以保护未加保密的信息它适用于E-mail、电子金融信息传输、电子数据交换、软件发布、数据存储及其他需要数据完整性和原始真实性的应用”。,返回本节,3. NSA的背景 美国杜鲁门总统在1952年用总统令下令建立NSA(国家安全局)。NSA对所有的美国国防通信、截获和破译国外政府的秘密通信负有责任。 NSA在美国的保密技术领域扮演着垄断者的身份。它的使命使它必须紧紧把握关键技术,努力保持它的垄断地位并由此抑制保密技术的私有化、非政府化发展和传播。,返回本节,4. NSA的发展 NSA保持它的垄断地位的努力并已延伸到出口和商业政策。 1995年美国政府

8、和NSA一起支持Clipper Chip的新型加密芯片并在芯片里留了一个“后门”。 国会在通过1987年计算机安全条例和民用领域保密技术革新限制时,希望限制NSA对机密领域的扩张。,返回本节,5.2.2 DSS的发展,1. DSS签名的修改 DSS签名为计算和核实数字签名指定了一个数字签名算法(DSA)。 2. DSS签名的进展 DSS签名使用FIPS180-1和安全hash标准(SHS)产生和核实数字签名。它提供了一个强大的单向hash算法,该算法通过认证手段提供安全性。,返回本节,5.3 RSA签名,1. 安全参数 令n=pq,p和q是大素数,选e并计算出d,使e*d = 1 mod (p

9、-1) (q-1),公开n和e,将p,q和d保密。则所有的RSA参数为K=(n,p,q,e,d)。,返回本章首页,2. 数字签名 对消息 M Zn 定义 : S = sig(M) = Md mod n 为对M的签名。,3. 签名验证(与RSA的公密钥恰好相反) 对给定的M,S可按下式验证: 设M=Se mod n,如果M = M,则签名为真。 否则,不接受签名。 显然,由于只有签名者知道d,由RSA体制可知,其他人不能伪造签名,但容易证实所给任意(M,S)对是不是消息M 和相应的签名所构成的合法对。,返回本节,例5-1 在RSA签名方案中,p=251,q=503 则,n=251*503=126

10、253 Z=(251-1)*(503-1)=125500 取b=2957,则a = 2957 -1 mod 125500 = 5093 其中,b是公钥,a是私钥,则对明文x=5601实施RSA签名 Sigk (x) = 56015093 mod 126253 = 5093 对(5601,5093)进行验证: Verk (x,y) =true = 50932957 mod 126253 =5601 所以(5601,5093)合法的RSA签名。 对(2005,2006)进行验证: Verk (x,y) =false = 20062957 mod 126253 =23717 所以(2005,2006

11、)不是合法的RSA签名。,5.4 DSS签名方案,5.4.1 Elgamal签名方案 5.4.2 DSS签名方案,5.4.1 ElGamal签名,1体制参数 p:一个大素数,可使Zp中求解离散对数为困难的问题。 g:是Zp中乘群Z*p 的一个生成元或本原元素。 M:消息空间为Z*p 。 S:签名空间为 Z*p Zp-1。 X:用户密钥 x Z*p ,公钥为 y=gx mod p。 安全参数为: k=(p,g,x,y) ,其中p,g,y为公钥,x为秘密密钥。,返回本章首页,2签名过程 给定消息,发送端用户进行下述工作: (1)选择秘密随机数k Z*p 。 (2)计算压缩值H(M),并计算: r=

12、gk mod p S=(H(M)-xr)k-1 mod (p-1) (3)将Sig(M,k) = (M,r,s)作为签名,将(M,r,s)送给对方。,3验证过程 收信人收到(M,r,s) ,先计算H(M),并按下式验证签名。 yrrs= g H(M) mod p 这是因为yrrs grxgsk=g(rx+sk) mod p,由于上式有 :(rx+sk)+H(M) mod (p-1) 故有: yrrs= g H(M) mod p 在此方案中,对同一消息M,由于随机数K不同而有不同的签名值 (M,r,s) 。,返回本节,5.4.2 DSS(数字签名标准)签名方案,设p是512位的素数,Zp上的离散

13、对数问题是一个难解问题,q是一个160位的素数,且满足: q t(p 1) 取 ,满足: q 1 mod p,签名算法: sigk(x,t)=(,) 其中: =(a mod p)mod q =(x + a)t-1 mod q,验证算法: ver(x,)= true 其中: e1 = x-1 mod q e2 = -1 mod q,5.5 盲签名及其应用,5.5.1 盲消息签名 5.5.2 盲参数签名 5.5.3 弱盲签名 5.5.4 强盲签名,返回本章首页,5.5 盲签名及其应用,盲签名就是接收者在不让签名者获取所签署消息具体内容的情况下所采取的一种特殊的数字签名技术,它除了满足一般的数字签名

14、条件外,还必须满足下面的两条性质: 1. 签名者对其所签署的消息是不可见的,即签名者不知道他所签署消息的具体内容。 2. 签名消息不可追踪,即当签名消息被公布后,签名者无法知道这是他哪次的签署的。,5.5 盲签名及其应用,关于盲签名, 曾经给出了一个非常直观的说明:所谓盲签名,就是先将隐蔽的文件放进信封里,而除去盲因子的过程就是打开这个信封,当文件在一个信封中时,任何人不能读它。对文件签名就是通过在信封里放一张复写纸,签名者在信封上签名时,他的签名便透过复写纸签到文件上。,5.5.1 盲消息签名,在盲消息签名方案中,签名者仅对盲消息m签名,并不知道真实消息m的具体内容。这类签名的特征是:sig

15、(m) = sig(m)或sig(m)含sig(m)中的部分数据。因此,只要签名者保留关于盲消息m的签名,便可确认自己关于m的签名。,返回本节,5.5.2 盲参数签名,在盲参数签名方案中,签名者知道所签消息m的具体内容(和盲签名不同)。按照签名协议的设计,签名收方可改变原签名数据,即改变sig(m)而得到新的签名,但又不影响对新签名的验证。因此,签名者虽然签了名,却不知道用于改变签名数据的具体安全参数。,返回本节,5.5.2 盲参数签名,盲参数签名方案的特性可以用于电子商务系统CA中心,为交易双方颁发口令。任何人可以验证口令的正确性,但包括CA中心在内谁也不知道变化后的口令。 CA是证书的签发

16、机构 。CA是负责签发证书、认证证书、管理已颁发证书的机关。它要制定政策和具体步骤来验证、识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权。,返回本节,5.5.3 弱盲签名,1. 弱盲签名原理 在弱盲签名方案中,签名者仅知sig(m) 而不知sig(m) 。如果签名者保留sig(m)及其他有关数据,待sig(m)公开后,签名者可以找出 sig(m) 和 sig(m)的内在联系,从而达到对消息 m 拥有者的追踪。,返回本节,2. 弱盲签名与盲消息签名的区别 弱盲签名方案中不仅将消息 m 做了盲化,而且对签名sig(m) 做了变化。 弱盲签名与盲消息签名都未能摆脱签名者将sig(m)和 sig(m) 相联系的特性,只是后者隐蔽性更大一些。 弱盲签名方案与盲消息签名方案的实际应用较为类似。,返回本节,5.5.4 强盲签名,在强盲签名方案中,签名者仅知 si

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号