《数字签名与认证》PPT课件_第1页
《数字签名与认证》PPT课件_第2页
《数字签名与认证》PPT课件_第3页
《数字签名与认证》PPT课件_第4页
《数字签名与认证》PPT课件_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

第三章数字签名与认证,Outline,数字签名概述单向散列函数认证技术,1、数字签名概述,在网络通信和电子商务中很容易发生如下问题:1)否认,发送信息的一方不承认自己发送过某一信息。2)伪造,接收方伪造一份文件,并声称它来自某发送方的。3)冒充,网络上的某个用户冒充另一个用户接收或发送信息。4)篡改,信息在网络传输过程中已被篡改,或接收方对收到的信息进行篡改。,第三章数字签名与认证,1、数字签名概述,用数字签名(DigitalSignature)可以有效地解决这些问题。数字签名就是主要用于对数字信息进行的签名,以防止信息被伪造或篡改等。,第三章数字签名与认证,1、数字签名概述,1)签名:手写签名是被签文件的物理组成部分,而数字签名不是被签消息的物理部分,因而需要将签名连接到被签消息上。,2)验证:手写签名是通过将它与其它真实的签名进行比较来验证而数字签名是利用已经公开的验证算法来验证。,数字签名与传统的手写签名有如下不同:,数字消息的复制品与其本身是一样的,而手写签名纸质文件的复制品与原品是不同的。,第三章数字签名与认证,1、数字签名概述,1)数字签名原理,公开密钥体制可以用来设计数字签名方案。设用户Alice发送一个签了名的明文M给用户Bob的数字签名一般过程如下:1)Alice用信息摘要函数Hash从M抽取信息摘要M;2)Alice用自己的私人密钥对M加密,得到签名文本S,即Alice在M上签了名;3)Alice用Bob的公开密钥对S加密得到S;4)Alice将S和M发送给Bob;5)Bob收到S和M后,用自己的私人密钥对S解密,还原出S;6)Bob用Alice的公开密钥对S解密,还原出信息摘要M;,第三章数字签名与认证,1、数字签名概述,1)数字签名原理,7)Bob用相同信息摘要函数从M抽取信息摘要M”;8)Bob比较M与M”,当M与M”相同时,可以断定Alice在M上签名。由于Bob使用Alice的公开密钥才能解密M,可以肯定Alice使用了自己的私人密钥对M进行了加密,所以Bob确信收到的M是Alice发送的,并且M是发送给Bob的。有关hash函数的作用将在下一节介绍。,第三章数字签名与认证,1、数字签名概述,1)数字签名原理,目前已经提出了许多数字签名体制,但可以分成两类:直接数字签名和需仲裁的数字签名,a)直接数字签名,直接数字签名仅涉及通信方,它假定收方知道发方的公开密钥数字签名,通过使用发方的私有密钥对整个消息进行加密或使用发方的私有密钥对消息的散列码进行加密来产生。,至今所有的直接数字签名体制都有一个共同的弱点,方案的有效性依赖于发方私有密钥的安全性。如果发方随后想否认发送过某个签名消息,发方可以声称签名的私钥丢失或被盗用并伪造了他的签名。,第三章数字签名与认证,1、数字签名概述,1)数字签名原理,b)需仲裁的数字签名,发方A对发给收方B的消息签名后将附有签名的消息发给仲裁者C;,C对其验证后连同一个通过验证的证明发送给收方B。,在这个方案中A无法对自己发出的消息予以否认,但仲裁者必须是得到所有用户信任的负责任者。,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,美国国家标准技术研究所(NIST)于1991年颁布了数字签名标准(DSS:DigitalSignatureStandard),该标准使用的签名算法简称为DSA(DigitalSignatureAlgorithm)。,第三章数字签名与认证,2)DSS数字签名机制,消息M,Hash,连接,签名,M,s,r,Hash,验证,公用参数,私钥,随机数k,公用参数,发送方公钥,比较,真假,发送签名方,验证签名方,DSS数字签名体制,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,算法描述:DSA算法作为ElGamal和Schnorr签名算法的变形,显然其安全性也是基于求离散对数的困难上。,构造参数:1)全局参数p:是一个大的素数,2L-112)用户私钥x:选取一个随机数,要求0xq3)用户公钥y:可以通过计算求得y,y=gxmodp,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,签名过程:1)生成随机数k,0kq;2)计算r:r=(gkmodp)modq;3)算s:s=(k-1(H(M)+xr)modq,到此,消息M的签字结果就是(r,s)。4)发送消息和签名结果(M,r,s)。,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,签名过程:,f2,消息M,Hash,f1,随机数k,r,s,q,x,q,g,p,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,认证过程:接收者在收到(M,r,s)之后,如下步骤:1)取得发送者的公钥y;2)计算w:w=s-1modq;3)计算u1:u1=(H(M)w)modq;4)计算u2:u2=(rw)modq;5)计算v:v=(gu1yu2)modp)modq;6)比较r、v,如果r=v,表示签名有效,否则签名非法。,第三章数字签名与认证,1、数字签名概述,2)DSS数字签名机制,认证过程:,M,s,r,Hash,f4,f3,比较,q,w,g,q,y,v,真假,第三章数字签名与认证,Outline,数字签名概述单向散列函数认证技术,2、单向散列函数,H(M):输入为任意长度的消息M;输出为一个固定长度的散列值,称为消息摘要(MessageDigest)H(M)是消息M的所有位的函数并提供错误检测能力:消息中的任何一位或多位的变化都将导致该散列值的变化H(M)又称为:哈希函数、数字指纹(Digitalfingerprint)、压缩(Compression)函数、数据鉴别码(Dataauthenticationcode)等,第三章数字签名与认证,2、单向散列函数,H能用于任意大小的分组H能产生定长的输出对任何给定的x,H(x)要相对易于计算,使得硬件和软件实现成为实际可能对任何给定的码h,寻找x使得H(x)=h在计算上是不可行的,即单向性对任何给定的分组x,寻找不等于x的y,使得H(x)=H(y)在计算上是不可行的,即弱抗冲突性寻找任何的(x,y)使得H(x)=H(y)在计算上是不可行的,即强抗冲突性,函数设计要求,第三章数字签名与认证,2、单向散列函数,用Hash函数进行报文鉴别的实例,如果Alice发送了信息给Bob,Bob收到信息后需要证实:1Bob收到的明文是否肯定由Alice发送的。2Bob收到的明文是否被篡改。,第三章数字签名与认证,2、单向散列函数,鉴别过程,1Alice用单向散列函数h从明文M中抽取信息文摘X,并利用RSA算法和Alice的私人密钥sk对X加密,得到密文E(X)。2Alice将M、E(X)发送给Bob3Bob收到M、E(X)后,用Alice的公开密钥pk对E(X)解密,即:D(E(X)X,还原出X4Bob用相同的单向散列函数h从收到的明文M中抽取信息文摘X15Bob比较X1和X,如果X1=X时,则证实:M是Alice发送的,并且明文在传输过程中没有被篡改;否则,证实:M不是Alice发送的,或者明文在传输过程中已经被篡改。,第三章数字签名与认证,2、单向散列函数,MD5算法,Merkle于1989年提出hashfunction模型RonRivest于1990年提出MD41992年,RonRivest完成MD5(RFC1321)在最近数年之前,MD5是最主要的hash算法现行美国标准SHA-1以MD5的前身MD4为基础输入:任意长度的消息输出:128位消息摘要处理:以512位输入数据块为单位,第三章数字签名与认证,2、单向散列函数,1数据填充与分组(1)将输入信息M按顺序每512位长度为一组进行分组,即:M=M1,M2,Mn-1,Mn(2)将信息M的Mn长度填充为448位,即填充后的信息M的长度恰好是一个比512的倍数小64位的数。(3)将填充前信息M的长度L转化为64位二进制数(最后64位)。(4)将该64位二进制数增加到填充后的信息M的Mn的后面,使最后的信息M的长度位512的整数倍。,第三章数字签名与认证,MD5的算法步骤,2、单向散列函数,2初始化散列值在MD5算法中要用到4个变量,分别为A、B、C、D,均为32位长。初始化值为:A=0 x01234567B=0 x89abcdefC=0 xfedcba98D=0 x76543210在MD5算法过程中,这四个32位变量被称为链接变量(chainingvariable),它们始终参与运算并形成最终的散列值。,第三章数字签名与认证,MD5的算法步骤,2、单向散列函数,3计算散列值(1)将填充后的信息按每512位分为一块(Block),每块按32位为一组划分成16个分组,即Mi=Mi0,Mi2,Mi15,i=1n。(2)分别对每一块信息进行4轮计算(即主循环),每轮计算基本相同。每一轮定义一个非线性函数,它们分别是:F(X,Y,Z)=(XDobbertin的攻击技术:使MD5的压缩函数产生冲突,即寻找MD5被认为是易受攻击的,逐渐被SHA-1和RIPEMD-160替代,第三章数字签名与认证,Outline,数字签名概述单向散列函数认证技术,3、认证技术,认证的定义,认证:(Authentication)在计算机安全性中,对用户身份或用户访问对象的资格的验证。它不同于授权,授权是指根据用户身份提供相应的操作权限。,Authenticationmerelyensuresthattheindividualiswhoheorsheclaimstobe,butsaysnothingabouttheaccessrightsoftheindividual.,第三章数字签名与认证,3、认证技术,为什么需要安全认证?,互联网困境,用户身份的不可预知性、资源赋予使用者的权限约束性决定了在计算机安全领域中要实现认证。,第三章数字签名与认证,3、认证技术,如何实现安全认证?,基本方法和工具是密码学原理:特别是对称密码体制和公钥密码体制在有关数字签名、信息完整性、抗否认性等方面的应用。,第三章数字签名与认证,3、认证技术,基本的身份认证方法,主体特征认证视网膜扫描、声音验证、指纹识别器。口令机制口令是约定的代码,假设只有用户和系统知道。智能卡访问不但需要口令,也需要使用物理智能卡。一次性口令用户每次使用不同的口令,需要口令发生器设备。PAP协议(PasswordAuthenticationProtocol)用于PPP(点对点)协议的身份认证协议,明文口令传输。CHAP协议(ChallengeHandshakeAuthenticationProtocol)不在网络上传送口令信息,比PAP具有更强的安全性。,第三章数字签名与认证,3、认证技术,指纹识别,第三章数字签名与认证,3、认证技术,虹膜识别,第三章数字签名与认证,3、认证技术,1)Kerberos身份验证,Kerberos是一种网络身份验证协议,Kerberos要解决的问题是:在一个开放的分布式网络环境中,如果工作站上的用户希望访问分布在网络中服务器上的服务和数据时,我们希望服务器能对服务请求进行鉴别,并限制非授权用户的访问。,第三章数字签名与认证,3、认证技术,1)Kerberos身份验证,第三章数字签名与认证,整个Kerberos系统由认证服务器AS、票据许可服务器TGS、客户机和应用服务器四部分组成。,3、认证技术,1)Kerberos身份验证,第三章数字签名与认证,基本思路:使用一个(或一组)独立的认证服务器(ASAuthenticationServer),来为网络中的客户提供身份认证服务;认证服务器(AS),用户口令由AS保存在数据库中;AS与每个服务器共享一个惟一保密密钥(已被安全分发)。,1)Kerberos身份验证,第三章数字签名与认证,两种票据票据许可票据(Ticketgrantingticket)客户访问TGS服务器需要提供的票据,目的是为了申请某一个应用服务器的“服务许可票据”;票据许可票据由AS发放;用Tickettgs表示访问TGS服务器的票据;Tickettgs在用户登录时向AS申请一次,可多次重复使用;服务许可票据(Servicegrantingticket)是客户访问服务业务时需要提供的票据;用TicketV表示访问应用服务器V的票据。,3、认证技术,1)Kerberos身份验证,第三章数字签名与认证,3、认证技术,2)公开密钥基础设施PKI,第三章数字签名与认证,PKI就是通过使用公开密钥技术和数字证书来提供网络信息安全服务的基础设施,是在统一的安全认证标准和规范基础上提供在线身份认证、证书认证CA(CertificateAuthority)、数字证书、数字签名等服务。,3、认证技术,2)公开密钥基础设施PKI,第三章数字签名与认证,a)数字证书,数字证书(DigitalCertificate)是由权威机构CA发行的一种权威性的电子文档,是网络环境中的一种身份证,用于证明某一用户的身份以及其公开密钥的合法性。数字证书原理是基于公开密钥体制。,3、认证技术,2)公开密钥基础设施PKI,第三章数字签名与认证,a)数字证书,证书与出租车司机的执照类似,3

温馨提示

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

评论

0/150

提交评论