1、第5章 数字身份认证,李晓鹏,学习目标,了解信息认证技术及数据摘要的应用知道数字签名的基本概念和算法实现掌握数字证书的概念及证书的基本格式和运行流程掌握PKI的基本原理及具体应用,引导案例,在电子商务和电子政务活动中,用户需要避免网上信息交换所面临的假冒、篡改、抵赖、伪造等种种威胁。在一些金融网络支付领域,这一问题显示尤其关键。目前各个银行都推出了网络银行服务,允许用户通过互联网实现账单支付、炒股、购物等活动。其中在银行、证券公司和用户三方就存在一个银证转帐的过程,这是一个彼此需要身份认证的带有一定金融风险的过程,那么具体应如何建立一个安全的、方便的的银证转帐系统,保证三方的利益不受侵害,是摆
2、在银行、证券公司业务管理上的一个首要问题。这些操作都涉及信息认证的有关知识,通过本章将了解如何实现身份认证、信息完整性、不可否认和不可修改等信息认证手段。,5.1.1 信息认证技术概述 认证技术是信息安全理论与技术的一个重要方面,也是电子商务与电子政务安全的主要实现技术,用于保证通信双方的不可抵赖性和信息的完整性。,5.1 信息认证技术,5.1 信息认证技术,信息认证和信息加密的区别,信息的加密与信息的认证是有区别的。加密保护只能防止被动攻击,而认证保护可以防止主动攻击。被动攻击的主要方法就是截收信息;主动攻击的最大特点是对信息进行有意修改,使其推翻原来的意义。主动攻击比被动攻击更复杂,危害更
3、大,攻击手段也比较多,后果也特别严重。,身份认证,身份认证是验证主体的真实身份与其所声称的身份是否符合的过程。认证的结果只有两个:符合和不符合。适用于用户、进程、系统、信息等。,认证技术的内容,认证技术主要涉及身份认证和报文认证两方面。身份认证用于鉴别用户身份;报文认证用于保证通信双方的不可抵赖性和信息的完整性。在某些情况下,信息认证显得比信息保密更为重要。,信息的加密与信息的认证的区别,信息的加密与信息的认证是有区别的。加密保护只能防止被动攻击,而认证保护可以防止主动攻击。被动攻击的主要方法就是截收信息;主动攻击的最大特点是对信息进行有意修改,使其推翻原理的意义。主动攻击比被动攻击更复杂,危
4、害更大,攻击手段也比较多,后果也特别严重。,身份认证是信息认证中的重要内容,一般涉及两个方面:识别 就是指要明确用户是谁,这就要求对每个合法的用户都要有识别能力。为了保证识别的有效性,就需要保证任意两个不同的用户都具有不同的识别符。验证 就是指在用户声称自己的身份后,认证方还要对它所声称的身份进行验证,以防假冒。,一般来说,用户身份认证可以通过三种基本方式或组合来实现:用户所知道到的某种秘密信息,如自己的口令;用户所持有的某种秘密信息(硬件),用户必须持有合法的随身携带的物理介质,如智能卡中存储的个人参数;用户所有具有的某些生物特征,如指纹、DNA信息等。,身份认证的例子,邮件登录Client
5、与Server之间的鉴别Telnet远程登录Ftp服务登录到某台电脑上,报文认证用于保证通信双方的不可抵赖性和信息的完整性,通信双方之间建立通信联系后,每个通信者对收到的信息进行验证,以保证所收到的信息是真实的过程,验证的内容包括:证实报文是由指定的发送方产生的证实报文的内容没有被篡改过,即证实报文的完整性确认报文的序号和时间是正确的。,身份认证系统的组成,声称者(Claimant),出示证件的人。验证者V(Verifier),检验声称者提出的证件的正确性和合法性,决定是否满足要求。第三方是可信赖者TP(Trusted third party),参与调解纠纷。在许多应用场合下没有第三方。,身份
6、认证的物理基础(1),Something the user know(例如口令)在互连网和计算机领域中最常用的认证方法是口令认证 简单,但不安全。口令有可能被窃取、丢失、复制。设计依据安全水平、系统通过率、用户可接受性、成本等,口令一般并不是以明文的形式存在和使用,而是采用一些加强的处理之后才使用的。对口令加密:对口令的加密算法必须是单向的,即只能加密,不能解密。在验证用户的口令时,验证方用单向函数加密,并与存储的密文相比较,若相等,则确认用户的身份有效,否则确认用户身份无效。一次性口令:使用一次性口令作为身份认证方法,使得中途截获口令变得毫无意义。由于要产生大量的一次性口令,所以必须采用专用
7、的设备来产生口令。,身份认证的物理基础(2),Something the user possesses(例如证件)认证系统相对复杂,用户所拥有的,磁卡或智能卡丢失,那么捡到卡的人就可以假冒真正的用户。需要一种磁卡和智能卡上不具有的身份信息,这种身份信息通常采用个人识别号PIN。持卡人必须自己妥善保存并严格保密。在验证过程中,验证者不但要验证持卡人的卡是真实的卡,同时还要通过PIN来验证持卡人的确是他本人。,身份认证的物理基础(3),Something the user is(例如指纹识别)更复杂,而且有时会牵涉到本人意愿,目前在电子商务和政务系统中广泛使用的认证方法和手段主要有数字签名、数字摘
8、要、数字证书、CA安全认证体系以及其他一些身份认证技术和报文认证技术。,5.1.3 身份认证方式,单向认证(One-way Authentication)双向认证(Two-way Authentication)信任的第三方认证(Trusted Third-party Authentication),单向认证,通信的一方认证另一方的身份,用对称密码体制来实现单向认证,某函数变换f双方共享的密钥KS随机数RA,用非对称密码体制来实现单向认证,随机数RAB的私钥KSB,双向认证,双方都要提供用户名和密码给对方,才能通过认证。,用对称密码体制来实现双向认证,A产生一个随机数RA双方共享的密钥KSB产生
9、一个随机数RB,用非对称密码体制来实现双向认证,A产生一个随机数RAB产生一个随机数RBB的私钥KSBA的私钥KSA,信任的第三方认证,当两端欲进行连线时,彼此必须先通过信任第三方的认证,然后才能互相交换密钥,而后进行通信,一种第三方认证机制,SKAU:管理员的私钥 PKB:B的公钥PKA:A的公钥,N1:A的临时交互号N2:B产生的新临时交互号,5.1.2 数据摘要,散列函数可以用于实现数据认证机制。散列函数讲把任意长度的输入映射为固定长度的输出,固定长度的输出就叫做消息摘要或校验和或散列和。因为所有输入组成的集合显然远远大于由所有输出组成的集合,所有必然有多个输入被映射到同一个输出。,散列
10、函数应当具有以下性质:要发现映射到同一个输出的多个输入在计算上是很难的,即在一个从输入到输出的方向上计算散列函数会非常容易,然而在相反的方向上计算散列函数就会非常困难。,严格来说,散列函数y=h(x)必须满足以下条件:(1)对于任意给定的y,求出x使得h(x)=y;(2)对于任意给定的x1不等于x2,求出y1,y2,使得h(x1)=h(x2)(3)求出(x,y)使得h(y)=h(x),5.2 数字签名,5.2.1 数字签名的基本概念数字签名:由信息发送者使用公开密钥技术产生的无法伪造的一段数字串,在数据电文中,以电子形式所含、所附或在逻辑上与数据电文有联系的数据以及与数据电文有关的任何方法,它
11、可以用于与数据电文有关的签字持有人的身份确认和表明此人认可数据电文所含信息。数字签名技术:以加密技术为基础,其核心是采用加密技术的加密、解密算法体制来实现对报文的数字签名。,数字签名是通过使用密码算法,对待发的数据进行加密处理,生成一段数据摘要信息附在原文上一起发送,接受方对其进行验证,判断原文真伪。这种数字签名适用于对大文件的处理,对于那些小文件的数据签名,则不预先做数据摘要,而直接将原文进行加密处理。传统方式的签名是可以被伪造(冒签)的,签名可以被从一个文件移到另一个文件中,签名后的文件可以被更改,签名者甚至声称是在违背自己意愿的情况下签名的。数字签名是非对称密钥加密技术与数字摘要技术的应
12、用。,数字签名基本特征,1.签名是可信的。因为签名者就是现实中的那个人,所以文件内容表述了签名者的真实意愿。2.签名是不可伪造的。大家相信其他人不可能仿冒签名者的签名。3.签名是不可重用的。其他人不可能将签名移动到另外的文件上。4.签名后的文件是不可篡改的。人们不可对已经签名的文件作任何更改。5.签名是不可抵赖的。即签名者事后无法声称他没有签过名。,数字签名的目的,目的是认证、核准、有效和负责,防止相互欺骗和抵赖。因此,数字签名是保证数据可靠性,实现认证的重要工具,它在信息安全、身份认证、数据完整性、不可否认以及匿名性等方面有着广泛的应用。,数字签名的功能,身份认证 收方通过发方的电子签名能够
13、确认发方的确切身份,但无法伪造。保密 双方的通信内容高度保密,第三方无从知晓。完整性 通信的内容无法被篡改。不可抵赖 发方一旦将电子签字的信息发出,就不能再否认。数字签名与数据加密完全独立。数据可以只签名或只加密,也可既签名又加密,当然,也可以既不签名也不加密。,更进一步的要求,依赖性:签名必须是依赖于被签名信息来产生;唯一性:签名必须使用某些对发送者是唯一的信息,以防止双方的伪造与否认;可验性:必须相对容易识别和验证该数字签名;抗伪造:根据一个已有的数字签名来构造消息是不可行的;对一个给定消息伪造数字签名是不可行的;可用性:在存储器中保存一个数字签名副本是现实可行的。,数字签名实现的功能,(
14、1)收方能够证实发送方的真实身份(2)发送方事后不能否认所发送过的报文(3)收方或非法者不能伪造、篡改报文。,1.数字签名与手书签名的区别在于,手书签名是模拟的,且因人而异 2.数字签名是0和1的数字串,因消息而异 3.数字签名与消息认证的区别在于,消息认证使收方能验证消息发送者及所发消息内容是否被篡改过4.当收者和发者之间有利害冲突时,单纯用消息认证技术就无法解决他们之间的纠纷,此时须借助满足前述要求的数字签名技术5.任何一种产生签名的算法或函数都应当提供这两种信息,而且从公开的信息很难推测出用于产生签名的机密信息 6.任何一种数字签名的实现都有赖于精心设计的通信协议,数字签名与手写签名的区
15、别,一个签名体制一般包括两个部分一是发送方的签名部分,对消息M签名,可以记作SSig(K,M),签字算法使用的密钥是秘密的,即是签字者的私钥。二是接收方的认证部分,对签名S的验证可以记作Ver(M,S,K)真,假,认证算法使用的密钥是发送方(即签名者)的公钥。,一个签名方案由签署算法与验证算法两部分构成。可用五元关系组(P,A,K,S,y)表示,其中,P是由一切可能消息(messages)所构成的有限集合;A是一切可能的签名的有限集合;K为有限密钥空间,是一些可能密钥的有限集合;任意kK,有签署算法SigkS,Sigk:PA,对任意xP,有s=Sigk(x),那么sS为消息x的签名,将(x,s
16、)发送到签名验证者。对于密钥集合K,有对应的验证算法Verky,满足:Verk:PA真,假 签名者收到(x,s)后,计算Verk(x,y),若y=Sigk(x),则Verk(x,y)=真;若ySigk(x),则Verk(x,y)=假。其中:任意是kK,函数Sigk和Verk都为多项式时间函数。Verk为公开的函数,而Sigk为秘密函数。如果坏人要伪造B对x的签名,在计算上是不可能的。也即,给定x,仅有B能计算出签名y,使得Verk(x,y)=真。一个签名方案不能是五条件安全的,有足够的时间,第三方总能伪造B的签名。,数字签名应具有的性质和要求,1 数字签名应该具有以下性质:(1)能够验证数字签名者产生的身份,以及数字签名产生的日期和时间;(2)能用于证实被签消息的内容;(3)数字签名可由第三方验证,从而能够解决通信双方的争议。,2 数字签名应满足的需求,(1)数字签名的产生必须使用双方独有的一些信息以防伪造和否认;(2)数字签名的产生应较为容易实现;(3)数字签名的识别和验证应较为容易实施;(4)对已知的数字签名构造一新的消息或对已知的消息构造一新的数字签名在计算机上都是不可行的。,数
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1