第四章 数字签名与认证技术
认证和数字签名技术
认证和数字签名技术、八、-前言Internet 的迅猛发展使电子商务成为商务活动的新模式。
电子商务包括管理信息MIS、电子数据交换EDI、电子订货系统EOS商业增值网VAN等,其中EDI 成为电子商务的核心部分,是一项涉及多个环节的复杂的人机工程,网络的开放性与共享性也导致了网络的安全性受到严重影响。
如何保证网上传输的数据的安全和交易对方的身份确认是电子商务是否得到推广的关键,可以说电子商务最关键的问题是安全问题,而数字签名(Digital Signatures) 又是电子商务安全性的重要部分。
一、数字签名技术1 、数字签名的概念数字签名是利用数字技术实现在网络传送文件时,附加个人标记,完成系统上手书签名盖章的作用,以表示确认,负责,经手等。
数字签名( 也称数字签字)是实现认证的重要工具,在电子商务系统中是不可缺少的。
保证传递文件的机密性应使用加密技术,保证其完整性应使用信息摘要技术,而保证认证性和不可否认性应使用数字签名技术。
2、数字签名的原理其详细过程如下:(1发方A将原文消息M进行哈希(hash)运算,得一哈希值即消息摘要h (M);(2)发方A用自己的私钥K1,采用非对称RSA算法,对消息摘要h(M)进行加密]E h (M)],即得数字签名DS(3)发方A把数字签名作为消息M的附件和消息M —起发给收方B;(4)收方B把接收到的原始消息分成M和[E h (M)];(5)收方B从M中计算出散列值h (M );(6)收方B再用发方A的双钥密码体制的公钥K2解密数字签名DS得消息摘要h (M ;(7)将两个消息摘要h (M ) =h (M)进行比较,验证原文是否被修改。
如果二者相等,说明数据没有被篡改,是保密传输的,签名是真实的;否则拒绝该签名。
这样就作到了敏感信息在数字签名的传输中不被篡改,未经认证和授权的人, 看不见原数据,起到了在数字签名传输中对敏感数据的保密作用。
3、数字签名的要求数字签名技术是公开密钥加密技术和报文分解函数相结合的产物。
第4章 数字签名与认证技 《电子商务安全》PPT课件
RSA签名 ElGamal签名
其他签名 认证技术 数字信封 数字时间戳 数字证书 数字签名的应用前景 本章小结
第4章 数字签名与认证技术
4.2 数字签名 4.2.1 数字签名概述 数字签名的实现过程 根据上述特征可得知数字签名实现的基本过程。假 设A要发送一个电子文件给B,A、B双方只需要经 过下面三个环节即可。
5. 输入x可以为任意长度,输出数据串 长度固定。
6. 抗冲突性(抗碰撞性)
电子商务安全
报文检验码与hash函数 报文验证码 hash函数 SHA-1算法 数字签名
数字签名概述 数字签名的分类
数字签名方案
RSA签名 ElGamal签名
其他签名 认证技术 数字信封 数字时间戳 数字证书 数字签名的应用前景 本章小结
根据对消息进行签名的内容不同,数 字签名可分为两种:一种是对整个消 息的签名,也就是对整个消息进行密 码变换生成消息的密文信息;另一种 是前面所描述的对报文的摘要进行签 名,也就是对消息摘要进行密码变换 生成摘要的密文信息,然后将其作为 签名附在报文之后。
电子商务安全
报文检验码与hash函数 报文验证码 hash函数 SHA-1算法 数字签名
数字签名方案
RSA签名 ElGamal签名
其他签名 认证技术 数字信封 数字时间戳 数字证书 数字签名的应用前景 本章小结
第4章 数字签名与认证技术
4.4 认证技术
4.4.1 数字信封
(1)A用其私钥加密文件,这便是签名过程; (2)A将加密的文件送到B; (3)B用A的公钥解开A送来的文件。
电子商务安全
报文检验码与hash函数 报文验证码 hash函数 SHA-1算法 数字签名
数字签名概述 数字签名的分类
数字签名与ca认证技术
技术成熟
经过多年的发展,数字签名和CA 认证技术已经相对成熟,形成了 完善的标准体系和产业链。
对未来发展的建议和展望
加强技术创新
随着网络攻击手段的不断升级,应继续 加强数字签名和CA认证技术的创新, 提高安全防护能力。
加强法律监管
建立健全数字签名和CA认证技术的法 律监管体系,确保技术的合规性和公
信任建立
通过CA认证中心颁发的数字证书,可以在网络环境中建立可靠的信任关系。
结合应用的优势和不足
• 广泛应用:该技术可应用于电子交易、电子邮件、软件分 发等多个领域,提高网络活动的安全性。
结合应用的优势和不足
技术复杂性
数字签名和CA认证技术的实现涉及复 杂的密码学算法和协议,对技术人员 的专业水平要求较高。
数字签名的算法和分类
常见算法
RSA、DSA、ECDSA等。
分类
根据应用场景和需求的不同,数字签名可以分为多种类型,如普通数字签名、盲签名、代理签名等。其中,普通 数字签名是最常见的一种,适用于大多数场景;盲签名可以保护用户的隐私信息;代理签名则可以实现在某些特 定条件下的签名操作。
03
CA认证技术
挑战与未来发展
分析当前数字签名和CA认证技术面 临的挑战,如技术更新、安全漏洞
等,并展望未来的发展趋势。
02
数字签名技术
数字签名的定义和作用
定义
数字签名是一种基于密码学的技术, 用于验证数字文档的真实性和完整性 。
作用
数字签名可以确保文档在传输过程中 没有被篡改,同时也可以确认文档的 发送者身份,防止抵赖和冒充。
推动数字经济发展
数字签名和CA认证技术是数字经济 发展的重要支撑,可以促进电子商 务、电子政务等领域的快速发展。
信息安全中的数字签名与认证技术研究
信息安全中的数字签名与认证技术研究I. 引言随着信息技术的快速发展,信息安全问题日益突出。
在互联网和电子商务的广泛应用下,数字签名与认证技术成为了保护信息安全的重要手段。
本文将对数字签名与认证技术进行深入研究。
II. 数字签名技术数字签名作为一种重要的数据完整性保护方法,能够验证数据的真实性和完整性。
它是通过使用一种密钥对数据进行加密,并生成一个唯一的签名,以证明数据没有被篡改。
数字签名技术主要包括哈希函数和加密算法的应用。
A. 哈希函数的应用哈希函数是将任意长度的输入数据转换成固定长度的输出数据的算法,其主要应用是对数据进行摘要生成。
数字签名技术中,哈希函数常用于对原始数据进行摘要处理,确保签名的唯一性和不可逆性。
B. 加密算法的应用加密算法是将数据转换为密文的过程,以确保数据的机密性。
在数字签名技术中,加密算法常用于生成签名,确保签名的安全性和不可伪造性。
常见的加密算法包括RSA、DSA等。
III. 数字认证技术数字认证技术是指通过对用户身份进行验证,并发放数字证书,确保数据的真实性和完整性。
它是建立在数字签名技术之上的一种应用。
A. 数字证书的生成与分发数字证书是一种包含用户身份信息及其公钥的电子文档,用于证明用户身份的真实性。
数字证书的生成与分发需要通过数字证书颁发机构(CA)来实现,在此过程中,数字签名和对称加密算法起到了关键作用。
B. 数字证书的验证与撤销数字证书的验证是确保数字证书的真实性和合法性。
验证过程包括获取证书、验证证书的签名、检查证书是否已被撤销等。
数字证书的撤销是为了解决证书被恶意使用或证书所有者身份发生变化等情况而引入的机制。
IV. 数字签名与认证技术在实际应用中的案例数字签名与认证技术在各个行业的信息安全保护中有着广泛的应用。
以下将介绍几个实际应用案例。
A. 电子合同签署电子合同的签署过程需要保证数据的真实性和完整性,数字签名与认证技术可以通过对合同数据进行签名和验证,确保合同的可靠性。
数字签名与认证
数字签名与认证
数字签名和认证是网络安全领域常用的两种技术手段,用于确保数据的完整性、真实性和可信度。
虽然它们在功能上有所不同,但通常一起使用以提高信息的安全性。
1.数字签名:
-数字签名是一种加密技术,用于验证数据的真实性和完整性。
它是通过对数据进行哈希计算,并使用私钥对哈希值进行加密生成数字签名。
接收者可以使用发送者的公钥解密数字签名,并对原始数据进行哈希计算,然后比对两个哈希值来验证数据的完整性和真实性。
-数字签名的主要作用包括:数据认证、身份认证、不可否认和数据完整性保护。
2.数字认证:
-数字认证是一种用于验证用户身份的技术,常用于网络通信和电子商务中。
它通过证书颁发机构(CA)对用户进行身份认证,并为用户颁发数字证书。
数字证书包含用户的公钥和身份信息,并由CA用私钥进行签名,以保证其真实性和可信度。
-数字认证的主要作用包括:身份认证、安全通信和数据加密。
数字签名和数字认证通常一起使用,以确保数据在传输过程中的安全性和可信度。
发送者使用数字签名对数据进行签名,接收者使用数字证书验证签名和发送者的身份,从而确保数据的完整性和真实性,并保护通信的安全性。
数字签名与身份认证
消息摘要
消息摘要由单向散列函数对一个消息作用 而生成。
消息摘要有固定的长度。
不同的消息其摘要不同,相同的消息其摘 要相同,因此摘要成为消息的“指纹”。
基本过程:
Alice对消息摘要签名
文件P
单
向
散 消息
散列签名
列 摘要 DA DA (H(P))
函 H(P)
数
H
文件P
Bob验证签名
EA 消息摘要H(P)
盲签名的过程:
(1)Alice将文件M乘一个随机数得M’,这个随机数通常称 为盲因子,Alice将盲消息M’送给Bob;
(2)Bob在M’上签名后,将其签名Sig(M’)送回Alice;
(3)Alice通过除去盲因子,可从Bob关于M’的签名Sig( M’)中得到Bob关于原始文件M的签名Sig(M)。
➢利用申请的数字证书在windows live mail中发送 数字签名信件
➢利用他人的数字证书在windows live mail中发 送加密信件
查看数字签名邮件
4.2 身份认证技术
4.2.1 身份认证的概念 4.2.2 身份认证的主要方法 4.2.3 身份认证的协议
➢身份认证概念
身份认证(身份识别):证实客户的真 实身份与其所声称的身份是否相符的过 程。它是通信和数据系统正确识别通信 用户或终端的个人身份的重要途径。
➢多重签名
多重签名是面对团体而使用的,即一个文 件需要多个人进行签署。
假设A和B都需要对文件进行签名: 一是A和B各对文件副本签名 二是先由A对文件签名,B再对A的签名结果 进行签名
数字时间戳(digital time-stamp)用于证明消息的收 发时间。因此需要一个可信任的第三方-时间戳权威 TSA(time stamp authority),来提供可信赖的且不可 抵赖的时间戳服务。
第四讲 数字签名与认证技术.概要
4.1.1 数字签名原理
所谓数字签名就是通过某种密码运算生成一系 列符号及代码组成电子密码进行签名,来代替书写 签名或印章,对于这种电子式的签名还可进行技术 验证,其验证的准确度是一般手工签名和图章的验 证无法比拟的。 数字签名是目前电子商务、电子政务中应用最 普遍、技术最成熟、可操作性最强的一种电子签名 方法。它采用了规范化的程序和科学化的方法,用 于鉴定签名人的身份以及对一项电子数据内容的认 可。它还能验证出文件的原文在传输过程中有无变 动,确保传输电子文件的完整性、真实性和不可抵 赖性。
2019/1/27 计算机网络安全 3
4.1.1 数字签名原理
联合国贸发会的《电子签名示范法》中对电 子签名做如下定义:“指在数据电文中以电子形 式所含、所附或在逻辑上与数据电文有联系的数 据,它可用于鉴别与数据电文相关的签名人和表 明签名人认可数据电文所含信息”; 在欧盟的《电子签名共同框架指令》中就规 定:“以电子形式所附或在逻辑上与其他电子数 据相关的数据,作为一种判别的方法”称电子签 名。
2019/1/27 计算机网络安全 6
4.1.2 数字签名的种类
2. 生物识别技术 利用人体生物特征进行身份认证的一种技术。 生物特征是一个人与他人不同的唯一表征,它是 可以测量、自动识别和验证的。生物识别系统对 生物特征进行取样,提取其唯一的特征进行数字 化处理,转换成数字代码,并进一步将这些代码 组成特征模板存于数据库中。人们同识别系统交 互进行身份认证时,识别系统获取其特征并与数 据库中的特征模板进行比对,以确定是否匹配, 从而决定确认或否认此人。
2019/1/27 计算机网络安全 7
4.1.2 数字签名的种类
生物识别技术主要有以下几种。 1) 指纹识别技术 可以将一份纸质公文或数据电文按手印签名或放 于IC 卡中签名。但这种签名需要有大容量的数据 库支持,适用于本地面对面的处理,不适宜网上 传输。 2) 视网膜识别技术 使用困难,不适用于直接数字签名和网络传输。 3) 声音识别技术 这种技术精确度较差,使用困难,不适用于直接 数字签名和网络传输。
第4章 数字签名技术与应用
目录
目录 退出
4.7.2 NSA的发展
NSA举世闻名并多次受到奖励。在二次世界大战后的几年里,制作和破 解密码对美国国家安全的建立变得越来越重要。杜鲁门总统在1952年用 总统令下令建立NSA。NSA对所有的美国国防通信、截获和破译国外政 府的秘密通信负有责任。通过这些,NSA就具有了极强的获取和自动扫 描大部分情报的能力。如果不是这样,电子信息可能会以任何方式出现 在美国的领空。 了解NSA的背景是很重要,因为在它建立后的45年里,NSA在美国的保 密技术领域扮演着垄断者的身份。它的使命使它必须紧紧把握关键技术, 努力保持它的垄断地位并由此抑制保密技术的私有化、非政府化发展和 传播。NSA努力压制加密信息技术的动机是显而易见的,因为当信息保 密技术传播的更广泛时,NSA收集情报的工作会变得更加的困难和费时。 NSA保持它的垄断地位的努力已经延伸到出口和商业政策。联邦政府限 制具有保密特性的软件产品的出口。特别地,在政府部门设有国防贸易 办公室依据军备国防交易规则(ITAR)管理着保密技术的出口。除了具 有军用目的的软件产品外,ITAR还涵盖了许多具有保密性能的商业软件, 如像Microsoft Internet Explorer Navigator这样的普通软件。根据出口许可 证申请制度,NSA审查ITAR所涵盖的信息安全技术。NSA基本上完全控 制着商业软件保密技术的出口,这些软件当然是NSA所关注的,它认为 从本质上讲,这些软件也属于军事装备。
第25页 共27页
目录
目录 退出
AT&T公司的SecretAgent 3.14
该产品的主要功能有: • SecretAgent从密钥生成到压缩各个方面都支持多种标准,其功能 有加密、数字签名、压缩、解密、自动邮寄加密文件和改变加密 标准等,单独的密钥管理工具允许管理员合并公共密钥数据库。 与其他大多数加密软件包相同,SecretAgent并未提供许多工具让 用户实施自己公司的标准。SecretAgent可以使用外部的X.509或其 他认证服务器。 • 数据保护。SecretAgent对文件加密较方便,在主菜单中只需简单 地把文件添加到列表中单击加密按钮,输入口令即可完成加密。 加密后可删除原文件或让SecretAgent在加密的同时自动删除原文 件。SecretAgent带有一些用于Word for Windows和WordPerfect等 应用程序的宏,允许用户使用程序菜单或工具栏对文件进行加密。 • 数据共享。SecretAgent在自动与其他软件共享数据的同时,能够 很方便地保护用户本地文件的安全。SecretAgent很适合与其他产 品配合使用,它的公共密钥数据库使加密文档用于其他产品变得 简单易行,它可以通过遵循VIM和MAPI规范的电子邮件软件包发 送文档,它还自动签名加密文档并且将其转换为MIME的信息。
第四章数字签名
r=f2(k, p, q, g)=(gk mod p) mod q
p q g
f2f 2 k
r x g
f1 m H
s
(a)
DSA的验证过程框图
w=f3(s′, q)=(s′) -1mod q;
v=f4(y, q, g, H(m′), w, r′)
=[(g(H(m′)w)
m′ s′ r′
mod qyr′w mod q)
签名者 签名有效 时间
源文件被修改后,签 名无效
数字签名应具有的性质
必须能够验证作者及其签名的日期时间;
必须能够认证签名时刻的内容; 签名必须能够由第三方验证,以解决争议; 因此,数字签名功能包含了认证的功能; WHY?
数字签名的设计要求
依赖性 唯一性 可验性 抗伪性 可用性
签名必须是依赖于被签名信息的一个比特模式,
(4) 用户为待签消息选取的秘密数k是满足0<k<q的随机数 或伪随机数。
(5) 签名过程。 用户对消息m的签名为(r, s), 其中 r=(gk mod p) mod q s=[k-1(H(m)+xr)] mod q H(m)是由SHA求出的杂凑值。
(6) 验证过程。 设接收方收到的消息为m′, 签名为(r′,s′)。 计算
签名方案2
(1)X→A: IDX‖ EkXY[m]‖ EkXA[IDX‖H(EkXY[m])] (2)A→Y:
EkAY[IDX‖EkXY[m]‖EkXA[IDX‖H(EkXY[m])]‖T]
kXY——X、Y共享的密钥
签名方案2存在的问题
仲裁者有可能和发方共谋以否认发方曾发
过的消息,也可以和收方共谋以伪造发方的签 名。
签名必须使用某些对发送者是唯一的信息,以防伪造与否认;
第四章 数字签名与认证技术
06:20:20
哈希函数的性质
定义 哈希(Hash)函数是一个输入为任意长的二元
串,输出为固定长度的二元串的函数。一般用
H(·)表示哈希函数,若输出是长度为l的二元串,
哈希函数表示为:
H(·):{0,1}*→{0,1}l
06:20:20
定义
哈希函数H(·):{0,1}*→{0,1}l称为具有抗
第二原像性(Second Preimage Resistant),
是指任意给定M∈{0,1}*及其信息摘要H(M),求 出M′∈{0,1}*且M′≠M,使得H(M′)=H(M)是
困难的。
06:20:20
哈希函数的性质
定义
哈希函数H(·):{0,1}*→{0,1}l称为具有抗
06:20:20
4.2 消息认证与哈希函数
哈希函数的性质 哈希函数的结构 安全哈希函数(SHA) 消息认证
06:20:20
安全哈希函数(SHA) 安全哈希函数(SHA)
由美国国家标准和技术协会 (NIST)提出的,于1993年作为 美国联邦消息处理标准(FIPS PUB 180)公布。1995年NIST发 布了它的修订版(FIPS 180-1), 通常称为SHA-1
第4章 数字签名与认证技术
06:20:20
第四章 数字签名与认证技术
在网络环境下,数字签名与认证技术是信 息完整性和不可否认性的重要保障,是公钥密 码体制的重要应用。信息的发送方可以对电子 文档生成数字签名,信息的接收方则在收到文 档及其数字签名后,可以验证数字签名的真实 性。身份认证则是基于数字签名技术为网络世 界中实体的身份提供可验证性。
第4章数字签名与CA认证技术课件全文编辑修改
网络信息安全
二、数字签名的应用原理
(1)发送方利用数字摘要技术,使用单向Hash函数对信息报文M进行数学变换,得到信息报文的数字摘要A; (2)发送方使用公开密钥加密算法,利用自己的私人密钥对数字摘要A进行加密(签名),得到一个特殊的字符串,称为数字标记(这个特殊的数字标记就是发送者加在信息报文上的数字签名): (3)发送方把产生的数字签名附在信息报文之后,一同通过因特网发给接收方:
网络信息安全
不可否认签名(二)
不可否认协议可以证实以下两点: a)签名者可以证实接收者所提供的假签名确实是假的; b)接收者提供的真签名不可能(极小的成功概率)被签名者证实是假的
网络信息安全
盲签名(一)
需要某个人对某数据签名,而又不能让他知道数据的内容,我们称这种签名为盲签名(Blind Signature)。在无记名投票选举和数字化货币系统中往往需要这种盲签名。
网络信息安全
二、数字签名的安全性
(1)数字签名利用密码技术进行,是一组其他任何人无法伪造的数字串,通过数字签名可以达到与传统签名同样的效果,并且比真实的签名更具有不可伪造性。(2)数字签名的特点是它代表了文件的特征,文件如果发生改变,数字签名的值也将发生变化,并没有第二个人可以做出同样的签名。(3)数字签名技术的实质在于对特定数据单元的签名,而不是加密整个文件。因此,数字签名在提供数据完整性的同时,也可以保证数据的真实性。完整性保证传输的数据没有被修改,而真实性则保证文件确实是由合法者产生,而不是由其他人假冒,(4)当该签名得到检验之后,能够在任何时候向第三方即仲裁人提供签名人的身份的证明。
网络信息安全
盲签名(二)
盲签名与普通签名相比有两个显著的特点: ①签名者不知道所签名的数据内容; ②在签名被接收者泄露后,签名者不能追踪签名。
第四章消息认证
公钥密码体制加密认证
这种方式既能提供认证, 又能够提供数字签名
A用B的公钥对明文加密 B能用自己的私钥解出明文,说明没有被人更改。
消息认证
(2) 消息认证码
使用一个密钥生成一个固定大小的小数据块,附加在消息 后,称MAC (Message Authentication Code)。 MAC = FK(M) 收到消息后,只需要根据密钥和消息来计算MAC是否等 于传过来的MAC。 接收者可以确信消息M未被改变,也可以确信消息来自所 声称的发送者;
MAC函数类似于加密函数,但不需要可逆性。 因此在数学上比加密算法被攻击的弱点要少。
假设双方共享密钥
消息认证
为何要使用消息认证码? 根本上,信息加密提供的是保密性而非真实性 加密代价大(公钥算法代价更大) 某些信息只需要真实性,不需要保密性
广播的信息难以使用加密(信息量大)
网络管理信息等只需要真实性 政府/权威部门的公告
第四章
数字签名和认证技术
一 二
消息认证
数字签名 身份认证
三
回顾与总结
对称密码算法
– 运算速度快、密钥短、多种用途、历史悠久 – 密钥管理困难
非对称密码算法
– 只需保管私钥、可以相当长的时间保持不变、需要
的数目较小
– 运算速度慢、密钥尺寸大、历史短
信息安全的需求
保密性( Confidentiality)
A->B: E(M || D(H(M),KdA),K)
几种常用的HASH算法
MD5
SHA-1
RIPEMD-160
MD5简介
Merkle于1989年提出hash function模型 Ron Rivest于1990年提出MD4
计算机网络安全技术-第4章数字签名与CA认证技术
数字签名与CA认证技术的比较与选择
数字签名和CA认证技术在实现 数据完整性和身份认证方面具
有不同的优势和适用场景。
CA认证适用于大规模的安全需 求场景,如企业网络、电子商 务等,可以提供全面的身份认 证和通信安全保障。
数字签名适用于较小规模的安 全需求场景,如电子邮件、软 件发布等,可以提供端到端的
详细描述
RSA数字签名算法基于数论中的一些基本原理,如大数因子分解和模幂运算。该算法使用一对密钥,一个公钥用 于加密和验证签名,另一个私钥用于解密和生成签名。私钥用于对消息进行签名,生成一个数字签名,公钥用于 验证该签名的有效性。
DSA数字签名算法
总结词
DSA数字签名算法是一种基于离散对数问题的数字签名算法,它使用一对密钥, 一个用于签名,另一个用于验证。
CA认证的定义
CA认证(Certificate Authority Authentication)是一种基于公钥基 础设施(PKI)的网络安全认证机制, 用于验证网络通信双方的身份真实性 和可信度。
CA认证通过颁发数字证书,对网络通 信中的用户或设备进行身份识别,确 保只有授权的用户或设备才能访问特 定的网络资源或服务。
详细描述
ECDSA数字签名算法基于椭圆曲线密码学,使用一对密钥进行签名和验证。私钥用于生成数字签名, 公钥用于验证签名的有效性。ECDSA数字签名算法具有较高的安全性和效率,被广泛应用于金融、电 子商务等领域。
04 CA认证技术的实现方式
证书颁发流程
用户向CA机构提出证书申请
01
用户需要在CA机构处注册账号,并提交必要的信息以进行身份
CA认证的原理
证书颁发
CA作为第三方信任机构,负责颁发数字证书,其中包含公钥、证书持有者的身份信息以 及CA的签名等。
2_4数字签名和认证技术
2.5 数字签名
2.5.1技术要求
•对于单纯的消息认证:(并 不完备)
m
||
k
m
c k D m
Ck(m)
c ||
Ck(m) E
k2 k2
比较 c
k1
m
k1
c
Ek2[m||Ck1 (m)]
比较
m
E
k2
|| c
k1
Ek2 (m)]
c
k1
计算机网络安全基础
D
k2
m
Ck1[Ek2 (m)]
比较
2.5 数字签名
计算机网络安全基础
证书的撤销
证书中的有效期 证书提前作废的原因 私钥泄密 用户自己的、CA的 持有人身份变化 CRL - certificate revocation list (证书吊销列表) 由CA定期公布的证书黑名单 CRL内容 作废证书的序列号的表
计算机网络安全基础
计算机网络安全基础
2.5 数字签名
(2)鉴别 若A要抵赖曾发送信息给B,B可以将M及 DSKA(M)出示给第三方(仲裁方)。第三方很容易用 PKA证实A确实发送M给B了。 反之,若B伪造M’,则B不敢向第三方出示 DSKA(M),即证明B伪造了信息。
计算机网络安全基础
2.5 数字签名
数字签名的步骤: ①使用单向散列算法对原始信息进行计算,得到一个 固定长度的信息摘要; ②发送方用自己的私钥加密信息摘要,生成发方的数 字签名; ③发方用接收方公钥加密明文和信息摘要,一同发给 接收方; ④接收方用私钥解密,得到明文和信息摘要,然后用 相同的单向散列函数来计算明文的信息摘要; ⑤如果两个信息摘要不同,则说明收到的信息是伪造 或被篡改的。
网络安全讲义 4章(数字签名和认证协议)
第 13 章数字签名和认证协议(一)回顾与总结●消息鉴别(Message Authentication):是一个证实收到的消息来自可信的源点且未被篡改的过程。
●散列函数(Hash Functions):一个散列函数以一个变长的报文作为输入,并产生一个定长的散列码,有时也称报文摘要,作为输出。
●数字签名(Digital Signature)是一种防止源点或终点抵赖的鉴别技术。
(二)讨论议题●数字签名(Digital Signature)●认证协议(Authentication Protocol)(三)数字签名●消息鉴别用以保护双方之间的数据交换不被第三方侵犯;但它并不保证双方自身的相互欺骗。
假定A发送一个认证的信息给B,双方之间的争议可能有多种形式:– B伪造一个不同的消息,但声称是从A收到的。
– A可以否认发过该消息,B无法证明A确实发了该消息。
●例如:EFT系统(Electronic Funds Transfer system,电子支付或电子资金转账系统)中改大金额;股票交易指令亏损后抵赖。
●传统签名的基本特点:①能与被签的文件在物理上不可分割②签名者不能否认自己的签名③签名不能被伪造④容易被验证●数字签名是传统签名的数字化,基本要求:①能与所签文件“绑定”②签名者不能否认自己的签名③签名不能被伪造④容易被自动验证13.1数字签名13. 1. 1 对数字签名的要求(一) 数字签名应具有的性质●必须能够验证作者及其签名的日期时间;●必须能够认证签名时刻的内容;●签名必须能够由第三方验证,以解决争议;因此,数字签名功能包含了鉴别的功能(二) 数字签名的设计要求●签名必须是依赖于被签名信息的一个位串模式;●签名必须使用某些对发送者是唯一的信息,以防止双方的伪造与否认;●必须相对容易生成该数字签名;●必须相对容易识别和验证该数字签名;●伪造该数字签名在计算复杂性意义上具有不可行性,既包括对一个已有的数字签名构造新的消息,也包括对一个给定消息伪造一个数字签名;●在存储器中保存一个数字签名副本是现实可行的。
数字签名与身份认证(技术专攻)
接收方收到(M,s)之后
(1)取得发送方的公钥(e,n)
(2)解密签名s:h=se mod n。
(3)计算消息的散列值H(M)。
(4)比较,如果h=H(M),表示签名有效;否则,签名无效。
如果消息M很短的时候,可以直接对M用公钥解密以验证签名的有效
性,可以表达为:Ver(M,s专)=业课真〈=〉M=se mod n
2.数字签名的形式化定义 “数字签名”系指在数据电文中,以电子形式所含、所附或在逻
辑上与数据电文有联系的数据,和与数据电文有关的任何方法,它 可用于数据电文有关的签字持有人和表明此人认可数据电文所含信 息。
专业课
3
4.1 数字签名技术
一个签名方案由签署算法与验证算法两部分构成。可用五元关系组
(P,A,K,S,y)
(3)当群体中某—个成员签名时,从自己的m个私钥中随机选择一个, 进行签名。
(4)而验证签名时,用该团体的公钥表进行签名认证即可。
(5)当发生争议时,第三方知道密钥对与成员之间的对应关系,所以 可以确定出签名者是团体中哪一个成员。
一是发送方的签名部分,对消息M签名,可以记作S=Sig(K, M),签字算法使用的密钥是秘密的,即是签字者的私钥。
二是接收方的认证部分,对签名S的验证可以记作Ver(M,S, K)— {真,假},认证算法使用的密钥是发送方(即签名者)的公钥。
专业课
2
4.1 数字签名技术
1.数字签名的特点 (1)信息是由签名者发送的; (2)信息自签发后到收到为止未曾做过任何修改; (3)如果A否认对信息的签名,可以通过仲裁解决A和B之间的争议 (4)数字签名又不同于手写签名: 数字签名随文本的变化而变化,手写签字反映某个人个性特征, 是不变的;数字签名与文本信息是不可分割的,而用手写签字是附 加在文本之后的,与文本信息是分离的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14:04:11
4.2 消息认证与哈希函数
哈希函数的性质 哈希函数的结构
安全哈希函数(SHA)
消息认证
14:04:11
哈希函数的结构
由Merkle提出的迭代哈希函数一般结构如图 所示,这也是目前大多数哈希函数(MD5、SHA-1、 RIPEMD)的结构。其中,IV称为初始向量,CV称 为链接变量,Yi是第i+1个输入消息分组,f称为 压缩函数,L为输入的分组数,l为哈希函数的输 出长度,b为输入分组长度。
密钥生成算法Gen
签名生成算法Sig
签名者公开密钥, Sk为签名者秘 它是一个确定性算法,由验证者执 密钥 Sk,待签名消息 m∈{0,1}k为输 k 密钥;即 Gen(1 )→(Pk, Sk)。 行,该算法以签名公开密钥 ,签名 入,输出一个串s。此时称sPk 为签名 消息对(m, s)为输入,输出 0所做的 或1,即 者以签名秘密密钥 Sk对消息m Ver (Pk,m, s)→{0,1},如果 签名,即 Sig (Sk,m)→s。 s∈Sig(m),则输出1说明签名有效; 反之输出0,则说明签名无效
哈希函数的性质
定义
哈希函数H(·):{0,1}*→{0,1}l称为具有抗 碰撞性(Collision Resistant),是指求出 任意M,M′∈{0,1}*,且M′≠M,使得 H(M′)=H(M)是困难的。 由上面的四个定义可以知道,哈希函数 应该具有单向性、抗原像性、抗第二原像性 以及抗碰撞性。
14:04:11
哈希函数的性质
定义 哈希函数H(·):{0,1}*→{0,1}l称为具有抗 第二原像性(Second Preimage Resistant), 是指任意给定M∈{0,1}*及其信息摘要H(M),求 出M′∈{0,1}*且M′≠M,使得H(M′)=H(M)是 困难的。
14:04:11
14:04:11
安全哈希函数(SHA)
对于步骤4的每一次循环又可分为三个阶段 把H0,H1,H2,H3,H4分别 复制到中间变量A,B,C,D, E中,阶段2的所有操作都将 在中间变量A,B,C,D,E 阶段1:复制中间变量 SHA-1每一个主循环压缩 上进行 函数F共包括80个操作, 每个操作中都使用了一 阶段2:执行压缩函数F 个非线性函数。 阶段3:更新MD缓存H0,H1,H2,H3,H4
14:04:11
消息认证
基于密钥哈希函数的MAC
基于密钥哈希函数的MAC的形式如下。
MACC= H (k‖M‖k)
14:04:11
消息认证
基于分组加密算法的MAC 令ek(m)表示输入消息为m,密钥为k的分组密 码加密算法。为了认证消息M,发送者首先对M进 行分组: M=m1 m2 „ml 其中,每一个子消息组mi(i=1,2,„,l)的长度 都等于分组加密算法输入的长度。如果最后一个 子消息组ml长度小于分组长度,就必须对其填充 一些随机值。设C0=IV为随机初始向量。现在, 发送者用CBC加密: Ci k (mi Ci 1 ) i 1, 2,, l 14:04:11
14:04:11
4.2 消息认证与哈希函数
哈希函数的性质 哈希函数的结构
安全哈希函数(SHA)
消息认证
14:04:11
安全哈希函数(SHA)
安全哈希函数(SHA)
由美国国家标准和技术协会 (NIST)提出的,于1993年作为 美国联邦消息处理标准(FIPS PUB 180)公布。1995年NIST发 布了它的修订版(FIPS 180-1), 通常称为SHA-1
签名验证算法Ver
14:04:11
4.2
消息认证与哈希函数
哈希函数的性质 哈希函数的结构
安全哈希函数(SHA)
消息认证
14:04:11
哈希函数的性质
定义
哈希(Hash)函数是一个输入为任意长的二元 串,输出为固定长度的二元串的函数。一般用 H(·)表示哈希函数,若输出是长度为l的二元串, 哈希函数表示为:
第四章
数字签名与认证技术
在网络环境下,数字签名与认证技术是信 息完整性和不可否认性的重要保障,是公钥密 码体制的重要应用。信息的发送方可以对电子 文档生成数字签名,信息的接收方则在收到文 档及其数字签名后,可以验证数字签名的真实 性。身份认证则是基于数字签名技术为网络世 界中实体的身份提供可验证性。
4.3
数字签名体制
RSA数字签名体制 ELGamal数字签名体制
数字签名标准DSS
14:04:11
RSA数字签名体制
算法 RSA签名体制。 密钥建立:密钥建立过程和 RSA 密码系统的密钥建立过程相 同。经过密钥建立过程,用户 Alice 的公钥为 (N,e) ,其中 N=pq , p 和 q 是 两 个 长 度 差 不 多 的 大 素 数 , e 是 满 足 gcd(e,f(N))=1 的 整 数 。 Alice 的 私 钥 为 d , 满 足 ed=1mod(f(N))。 签 名 生 成 : 为 了 生 成 消 息 的 签 名 , Alice 计 算 s=Signd(m)←md(mod N),即得到消息签名对(m,s)。 签名验证:设 Bob 是验证者,他知道公钥 (N,e) 属于 Alice 。 给 定 一 个 消 息 - 签 名 对 (m,s) , Bob 的 验 证 过 程 为 测 试 m≡se(mod N),如果成立,则Verify(N,e)(m,s)=True。
在所有80个操作完成后,算 法的下列步骤更新MD缓存
14:04:11
安全哈希函数(SHA)
【例】 SHA-1算法举例。
字符串“abc”的二进制表示为01100001 01100010 01100011,长度为24比特,则按照SHA-1的填充要求,应填充1个“1”和423个 “0”,最后有两个字为“0000000000000018”,表明原始消息的长度为24比特。 这样,这个输入只有一个512比特的分组。五个寄存器取如下的初始值: A=67452301 B=EFCDAB89 C=98BADCFE D=10325476 E=C3D2E1F0 消息分组的所有字取上述经过填充后的512比特分组,即: W[0]=61626380H(01100001 01100010 01100011 10000000 ), W[1]=W[2]=„W[14]=00000000H,W[15]= 00000018H。 在经过80步循环后,五个寄存器中的值分别如下: A=A9993E36 B=4706816A C=BA3E2571 D=7850C26C E=9CD0D89D 五个寄存器的值顺序排列,即得到消息“abc”的哈希函数 值
14:04:11
4.1
数字签名的概念与原理
数字签名的概念
数字签名的原理
14:04:11
数字签名的原理 原理 数字签名就是用私有密钥进行加密,而 认证就是利用公开密钥进行正确的解密。数 字签名的原理如图所示
14:04:11
数字签名的原理
它是一个概率多项式时间算法, 一个基于公钥密码学的数字签名方案被定义为 由系统或者签名者执行,该算法 一个算法三元组(Gen, Sig , Ver),方案中共有两方 以系统安全参数 1k为输入,输出 它是一个概率多项式时间算法, 密钥对( Pk,Sk),其中 参与:签名者Signer与验证者 Verifier 。 Pk称为 由签名者执行,该算法以签名秘密
14:04:11
第四章
数字签名与认证技术
本章内容提要:
数字签名的概念与原理
消息认证与哈希函数
数字签名体制
身份认证技术 认证技术应用案例 认证技术的发展趋势
14:04:11
4.1
数字签名的概念与原理
数字签名是密码学和信息安全中最重要 和最有用的概念之一。它的诞生使得在网络 环境下,任一实体(组织或者个人)对在网 络上传输的电子文件进行签名成为可能。任 何得到该签名的实体可以对签名的有效性进 行验证。
1
3.验证签名 设Bob为验证方,他知道公开参数(g, p)以及Alice的公钥yA。对于消息签名 对(m,(r,s)),Bob执行验证过程。 1)预查合法性 如果1≢r≢p-1,继续,否则签名是不合法的。 r s 2)计算 v1 : v1 yA r mod p m 3) 计算 v2 :v2 g mod p 4)比较 v 和 v2 :如果v1 v2 ,表示签名有效;否则签名无效
(3)用户公钥参数 计算y≡gx mod p作为用户的公钥。 由此设用户Alice的公私钥对为(xA,yA),yA公开,而xA保密。
14:04:11
RSA数字签名体制
2.生成签名 Alice欲生成对消息m的签名,则执行如下的签名过程: 1)随机选择k, k Z p ,并要求gcd(k,p-1)=1。 2)计算签名:r←gk mod p。 v 3)计算签名: s←k-1(m-xAr)mod(p-1)。 : 得到消息签名对为(m,(r,s))。
首先对报文进行填充,填充方法 SHA-1算法使用了 160 比特 是:先添加一个比特 1 ,然后填充 将一个 64 比特的填充前的消 SHA-1算法具体的处理步骤 (5×32比特)的缓存来存放 足够多的比特 0,使填充后的报文 息的长度分组附加到报文后 中间以及最终结果,这 160比 的长度与 448模512同余,即为 512 面,这个 64 比特的长度被看 特被分成 5个32比特字 H0,H1, 的倍数刚好减去 64比特 作是一个无符号整数 步骤1: 附加填充比特 H2,H3,H4(SHA-1算法中每 消息开头循环地处理消息序列 个字 32比特) 步骤2: 附加长度值 分组,直至消息的结尾。每一 次循环都以当前处理的512比 步骤3: 初始化MD缓存 特分组和MD缓存H0,H1,H2, H3,H4作为输入。 在最后一个消息分组处理完 步骤4: 以512比特(16个字)分组处理消息 毕后,MD缓存(H0,H1,H2, H3,H4)中的值即为算法输 步骤5: 输出 出的160比特报文摘要