消息认证与数字签名.ppt

上传人:公**** 文档编号:568207722 上传时间:2024-07-23 格式:PPT 页数:29 大小:346.50KB
返回 下载 相关 举报
消息认证与数字签名.ppt_第1页
第1页 / 共29页
消息认证与数字签名.ppt_第2页
第2页 / 共29页
消息认证与数字签名.ppt_第3页
第3页 / 共29页
消息认证与数字签名.ppt_第4页
第4页 / 共29页
消息认证与数字签名.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《消息认证与数字签名.ppt》由会员分享,可在线阅读,更多相关《消息认证与数字签名.ppt(29页珍藏版)》请在金锄头文库上搜索。

1、了解鉴别、数字签名的概念和作用 数字签名技术是实现交易安全的核心技术之一,它的实现基础就是加密技术。以往的书信或文件是根据亲笔签名或印章来证明其真实性的。这就是数字签名所要解决的问题。数字签名必须保证以下几点: 接收者能够核实发送者对报文的签名;发送者事后不能抵赖对报文的签名;接收者不能伪造对报文的签名。数字签名(digital signature )5.1数字签名基本概念数字签名基本概念数字签名就是通过一个单向函数对要传送的报文进行处理得到的用以认证报文来源并核实报文是否发生变化的一个字母数字串。用这个字符串来代替书写签名或印章,起到与书写签名或印章同样的法律效用。国际社会已开始制定相应的法

2、律、法规,把数字签名作为执法的依据。其使用方式是:报文的发送方从报文文本中生成一个128位或160位的单向散列值(或报文摘要),并用自己的私有密钥对这个散列值进行加密,形成发送方的数字签名,然后,将这个数字签名作为报文的附件和报文一起发送给报文的接收方。报文的接收方首先从接收到的原始报文中计算出散列值(或报文摘要),接着再用发送方的公开密钥来对报文附加的数字签名进行解密,如果这两个散列值相同,那么接收方就能确认该数字签名是发送方的。通过数字签名能够实现对原始报文鉴别与验证,保证报文的完整性、权威性和发送者对所发报文的不可抵赖性。数字签名机制提供了一种鉴别方法,普遍用于银行、电子贸易等,以解决伪

3、造、抵赖、冒充、篡改等问题。数字签名与数据加密完全独立。数据可以既签名又加密,只签名,只加密,当然,也可以既不签名也不加密。手工签名是模拟的,因人而异,而数字签名数字式的(0、1数字串),因信息而异。数字签名的功能:收方能够确认发方的签名,但不能伪造;发方发出签过名的信息后,不能再否认;收方对收到的签名信息也不能否认;一旦收发方出现争执,仲裁者可有充足的证据进行评判。(1) 直接方式的数字签名直接方式的数字签名一个由公开密钥密码体制实现的数字签名过程如下图KAdKAe签名验证ABMSSM一个典型的由公开密钥密码体制实现的、带有加密功能的数字签名过程如下图KBd加密(E)KBe解密(D)C信道签

4、名验证KAdKAeABMSSM(2) 数字签名过程数字签名过程只有加入数字签名及验证才能真正实现信息在公开网络上的安全传输。加入数字签名和验证的文件传输过程如下(见下图)发送方首先用Hash函数从原报文中得到数字签名,然后采用公开密钥算法用自己的私有密钥对数字签名进行加密,并把加密后的数字签名附加在要发送的报文后面;单向函数明文信息摘要签名后的信息摘要密文签名后的信息摘要用A的私钥签名发送方A明文信息摘要签名后的信息摘要密文签名后的信息摘要用A的公钥验证接收方B信息摘要单向函数比较数字签名和验证过程数字签名和验证过程发送方选择一个会话密钥对原报文进行加密,并把加密后的文件通过网络传输到接收方;

5、再用接收方的公开密钥对会话密钥进行加密,并通过网络把加密后会话密钥传输到接收方;接受方使用自己的私有密钥对会话密钥信息进行解密,得到会话密钥的明文;接收方再用会话密钥对加密了的报文进行解密,得到原报文;接收方用发送方的公开密钥对加密的数字签名进行解密,得到数字签名的明文;接收方再用得到的原报文和Hash函数重新计算数字签名,并与解密后的数字签名进行对比。如果两个数字签名是相同的,说明文件在传输过程中没有被破坏,信息完整。(3) 数字签名算法和技术数字签名算法和技术目前,广泛应用的数字签名算法主要有三种:RSA签名、DSS(数字签名系统)签名和Hash签名。这三种算法可单独使用,也可综合在一起使

6、用。数字签名是通过密码算法对数据进行加、解密变换实现的,用DES算法、RSA算法都可实现数字签名。(4) 数字签名与信息加密的区别数字签名与信息加密的区别数字签名的加密/解密过程和信息(报文)的加密/解密过程虽然都可使用公开密钥算法,但实现过程正好相反,使用的密钥对也不同。数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密(签名),接收方用发送方的公开密钥进行解密(验证)。这是一个一对多的关系:任何拥有发送方公开密钥的人都可以验证数字签名的正确性。 而信息(报文)的加密/解密则使用的是接收方的密钥对,这是多对一的关系:任何知道接收方公开密钥的人都可以向接收方发送加密信息,只有唯一拥

7、有接收方私有密钥的人才能对信息解密。在实用过程中,通常一个用户拥有两个密钥对,一个密钥对用来对数字签名进行加密/解密,一个密钥对用来对信息(报文)进行加密/解密。这种方式提供了更高的安全性。 数字签名大多采用非对称密钥加密算法,它能保证发送信息的完整性、身份的真实性和不可否认性,而数字加密采用了对称密钥加密算法和非对称密钥加密算法相结合的方法,它能保证发送信息的保密性。数字签名和信息加密过程的区别比较明显(如下图所示)。 接收者加密发送者使用发送者的私钥加密使用接收者的公钥数字签名解密使用发送者的公钥解密使用接收者的私钥验证数字签名与数据加密的区别数字签名与数据加密的区别数据加密数据解密数字签

8、名示意图简介MD5算法SHA-1算法其它算法单向散列算法l名称:名称:Hash Function、哈希函数、单向杂凑函数、数据(消息)摘要函数哈希函数、单向杂凑函数、数据(消息)摘要函数l单向散列函数单向散列函数 H(M) 作用于一任意长度的消息作用于一任意长度的消息 M,它返回一固定长度的散列它返回一固定长度的散列值值 h: h = H(M)l单向散列函数的特性:单向散列函数的特性:给定给定 M,很容易计算很容易计算 h。给定给定 h,根据根据 h = H(M) 计算计算 M 很难。很难。给定给定 M,要找到另一消息要找到另一消息 M,并满足并满足 H(M) = H(M) 很难。很难。l单向

9、散列函数的重要之处就是赋予单向散列函数的重要之处就是赋予 M 唯一的唯一的“指纹指纹”。l密码学上常用的单向散列函数有密码学上常用的单向散列函数有RSA公司公司MD系列中的系列中的MD2、MD4、MD5,美美国国NIST的的SHA、SHA-1,欧盟欧盟RIPE项目的项目的RIPEMD、RIPEMD-128、RIPEMD-160等。等。简介lMD系列单向散列函数是系列单向散列函数是Ron Rivest设计的,包括设计的,包括MD2、MD4和和MD5。MD表示消息摘要(表示消息摘要(Message Digest)。)。lMD5以以512位分组来处理输入文本,每一分组又划分为位分组来处理输入文本,每

10、一分组又划分为16个个32位子分组。算法的输出由四个位子分组。算法的输出由四个32位分组组成,将它们级联位分组组成,将它们级联形成一个形成一个128位散列值。位散列值。lMD5的安全性弱点在于其压缩函数的冲突已经被找到。的安全性弱点在于其压缩函数的冲突已经被找到。1995年有论文指出,花费年有论文指出,花费 1,000万美元,设计寻找冲突的特制硬件万美元,设计寻找冲突的特制硬件设备,平均在设备,平均在24天内可以找出一个天内可以找出一个MD5的冲突。的冲突。MD5算法报文摘要实现示意图应用层SET / IKE / SMIME传输层SOCKS / SSL / TLS网络层IPSec网络接口层PP

11、TP / L2F / L2TP / MPLS安全协议综述SSL(Secure Socket Layer ,安全套接层)协议安全套接层)协议由由Netscape公司公司1995年年6月提出。月提出。1999年被年被IETF接受后更名为接受后更名为TLS(Transport Layer Security),),RFC2246。SSL被广泛地用于被广泛地用于Web浏览器与服务器之间的身份认证浏览器与服务器之间的身份认证和加密数据传输。和加密数据传输。 SSL协议简介SSL协议安全信道三个特性协议安全信道三个特性私密性。因为在握手协议定义了会话密钥后,所有的消息都私密性。因为在握手协议定义了会话密钥后

12、,所有的消息都被加密。被加密。确认性。因为尽管会话的客户端认证是可选的,但是服务器确认性。因为尽管会话的客户端认证是可选的,但是服务器端始终是被认证的。端始终是被认证的。可靠性。因为传送的消息包括消息完整性检查可靠性。因为传送的消息包括消息完整性检查。SSL的缺点 无法知道传输过程中是否窃听、加密数据是否被解密;对商家有利,对客户不利。SET(Secure Electronic Transaction,安全电子交易)安全电子交易)协议协议由由VISA和和MasterCard两大信用卡公司于两大信用卡公司于1997年年5月联合月联合推出的规范。推出的规范。应用于应用于Internet上的以银行卡

13、为基础进行在线交易的安上的以银行卡为基础进行在线交易的安全标准。全标准。 SET协议简介协议简介SET协议的特点(优点)协议的特点(优点)对商家,提供了保护自己的手段,免受欺诈,使运营成本降对商家,提供了保护自己的手段,免受欺诈,使运营成本降低;低;对消费者,保证了商家的合法性,保护信用卡号等个人信息对消费者,保证了商家的合法性,保护信用卡号等个人信息不会被窃取;不会被窃取;对银行和发卡机构、信用卡组织,拓展网上业务,保证网上对银行和发卡机构、信用卡组织,拓展网上业务,保证网上支付的安全性;支付的安全性;对参与交易各方,定义了互操作接口,使一个系统可以用不对参与交易各方,定义了互操作接口,使一

14、个系统可以用不同厂商的产品。同厂商的产品。SET协议比协议比SSL协议复杂,因为协议复杂,因为SET不仅加密两个端点间的单个会话,它还非不仅加密两个端点间的单个会话,它还非常详细而准确地反映了卡交易各方之间存在的各种关系。常详细而准确地反映了卡交易各方之间存在的各种关系。 SET是一个多方的报文协议,它定义了银行、商家、持卡人之间的必须的报文是一个多方的报文协议,它定义了银行、商家、持卡人之间的必须的报文规范,而规范,而SSL只是简单地在两方之间建立了一条安全连接。只是简单地在两方之间建立了一条安全连接。SET报文能够在银行内部网或者其他网络上传输,而报文能够在银行内部网或者其他网络上传输,而SSL之上的卡支付系统只之上的卡支付系统只能与能与Web浏览器捆绑在一起。浏览器捆绑在一起。SET要求在银行网络、商家服务器、顾客的要求在银行网络、商家服务器、顾客的PC上安装相应的软件。上安装相应的软件。SET还要还要求必须向各方发放证书。这些都阻碍了求必须向各方发放证书。这些都阻碍了SET的推广。的推广。 相同点:都是电子商务中常用的重要的通信协议都是电子商务中常用的重要的通信协议都采用了都采用了RSA公钥算法公钥算法不同点:不同点:SET协议与协议与SSL协议的比较协议的比较PGP 系统PGP(Pretty Good Privacy)

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

最新文档


当前位置:首页 > 高等教育 > 研究生课件

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