第8章身份鉴别技术_第1页
第8章身份鉴别技术_第2页
第8章身份鉴别技术_第3页
第8章身份鉴别技术_第4页
第8章身份鉴别技术_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

第8章身份鉴别技术本章学习目标:掌握身份鉴别的基本原理了解基于口令的身份鉴别了解生物特征鉴别技术了解零知识证明原理了解零知识证明在身份鉴别中的应用8.1身份鉴别原理

鉴别(Authentication)分为实体鉴别和数据原发鉴别。实体鉴别也叫身份鉴别,是证明或确认某一实体(如,人、设备、计算机系统、应用和进程等)所声称的身份的过程。身份鉴别的基本的原理是把声称者提供的信息与某些保存下来的可以代表其的信息进行比对,以达到鉴别的目的。数据原发鉴别用于证明数据的出处或来源。身份鉴别的方式8.1身份鉴别原理根据鉴别信息的不同,身份鉴别有多种方式:(1)验证实体已知什么,如口令或通行短语(Password)。(2)验证实体拥有什么,如通行证、智能IC卡。(3)验证实体不可改变的特性,如指纹、声音等生物学测定得来的标识特征。(4)相信可靠的第三方建立的鉴别(递推)。(5)环境(如主机地址)。身份鉴别的要素

8.1身份鉴别原理

各种实系统的实体在很多情况下需要鉴别与被鉴别。某一实体伪称是另一实体的行为被称作假冒。鉴别机制可用来对抗假冒威胁。身份鉴别涉及两类实体——声称者(被鉴别方)和验证者(鉴别方)。身份鉴别通过鉴别双方在鉴别过程对鉴别信息进行验证而完成。身份鉴别是保证信息系统安全的重要措施。实体鉴别与数据原发鉴别8.1身份鉴别原理

在实体鉴别中,身份鉴别信息由参加通信连接或会话的远程参与者提交。在数据原发鉴别中,身份信息和数据项一起被提交,并且声称数据项来源于身份所代表的主体。身份鉴别的方向

8.1身份鉴别原理

身份鉴别可以是单向的也可以是双向的。所谓单向鉴别是指通信双方中只有一方鉴别另一方,而双向鉴别是指通信双方相互鉴别。在单向身份鉴别中,一个实体充当声称者;另一个实体充当验证者。对于双向身份鉴别,每个实体同时充当声称者和验证者。双向鉴别可在两个方向上使用相同或不同的鉴别机制。身份鉴别的分类

8.1身份鉴别原理依据鉴别信息是否共享:-对称鉴别,如口令和使用对称密码技术加密的质询;-非对称鉴别,如使用非对称密码技术和在不暴露任何信息情况下对信息所有者的信息进行验证的技术。依据鉴别过程是否采用密码技术-使用密码技术的鉴别:使用加密来保护传输期间的口令-使用非密码技术的鉴别:口令或质询-响应表对称的、非对称的或混合的密码技术,可用于鉴别信息的完整性保护和机密性保护。基本口令鉴别协议

8.2基于口令的身份鉴别技术

系统事先保存每个用户的二元组信息,即用户身份信息和口令。这种口令信息是明文的或仅经过简单加密的。当被鉴别方收到口令信息后,将其与系统中存储的用户口令进行比较,以确认用户是否为合法的访问者。这种鉴别方式叫口令鉴别协议(passwordauthenticationprotocol,PAP)鉴别。

PAP鉴别一般在通信连接建立阶段进行,在数据传输阶段不进行PAP鉴别。

基本口令鉴别协议的优缺点

8.2基于口令的身份鉴别技术优点:简单有效,实用方便,费用低廉,使用灵活。一般的系统(如Unix,WindowsNT,NetWare等)都提供了对口令鉴别的支持。然而,基于简单口令的鉴别方法有许多脆弱性,最主要的是口令容易向外部泄露和易于猜测的弱口令。另外还有线路窃听和重放等威胁。基本口令鉴别协议的改进

8.2基于口令的身份鉴别技术

为了减少口令鉴别协议的脆弱性,可以采用多种方式对口令鉴别协议进行改进,如引入散列函数、Salt机制和一次性口令(OTP)等。验证者声称者消息比较是或不是引入散列函数的口令鉴别协议8.2基于口令的身份鉴别技术引入散列函数

由于散列函数具有单向性,即从输入变量值计算出函数值容易,而从函数值逆向计算出输入变量的值计算不可行,因此常常通过该类函数对口令进行(单向)加密,验证方只保存口令加密后的信息。8.2基于口令的身份鉴别技术引入散列函数

鉴别时将口令加密后的信息进行对比验证。p’是声称者输入的口令信息,id是声称者的标识,h是散列函数。p’经过h的计算得到q’。q和id是验证者保留的散列之后的口令和对应的声称者标识。声称者输入p’和id,经过散列函数h计算得到q’。q’连同声称者标识id传给验证者,验证者验证q’是否与q相同。如相同,则鉴别通过;否则,鉴别不通过

。8.2基于口令的身份鉴别技术引入散列函数

该方案的主要缺陷是:利用已知的散列函数,攻击者很容易构造一张p与q对应的表(称为口令字典),表中的p是猜测的口令,尽可能包含各种可能的口令值,q是p的散列值。然后攻击者通过拦截鉴别信息q,利用口令字典就能以很高的概率获得声称者的口令,这种攻击方式称为字典攻击。8.2基于口令的身份鉴别技术引入散列函数

Salt机制称为加盐机制(salt称为盐,实际上是一串随机字符串)。加盐就是在进行散列运算时,增加salt字符串的输入,通过salt和口令混合加密得出散列值。可以看出,加入随机字符串(盐)后,将使得字典攻击的实施变得困难(请思考为什么?)8.2基于口令的身份鉴别技术加salt机制Salt验证者声称者消息比较是或不是加salt机制的鉴别交互示意图

在Unix/Linux下有多种散列算法,可以通过库函数crypt()调用这些算法。crypt()有key(口令)和salt(盐)两个输入参数,输出相应的散列值。salt是简单的字符串,长度取决于所使用的算法。不同的散列算法有不同的取值范围。由于salt参与散列运算,即使是相同的散列算法,相同的口令,使用不同的salt,也会得到不同的加密口令。当使用passwd命令修改密码时,会随机选择一个salt。salt使得使用字典攻击变得更困难。8.2基于口令的身份鉴别技术加salt机制OTP(One-TimePassword)是一次性口令机制,主要目的是确保在每次鉴别中所使用的加密口令不同,以对付重放攻击。OTP主要的实现方式有3种:第一种是质询-响应方式。鉴别时,系统随机给出一个信息,用户将该信息连同其鉴别信息(可能经过计算处理)提交系统进行鉴别;第二种方法采用时钟同步机制,与质询-响应方式的差异是随机信息是同步时钟信息。第三种方法是采用S/KEY一次性口令身份鉴别协议。这里主要介绍质询-响应方式和S/KEY一次性口令身份鉴别协议。8.2基于口令的身份鉴别技术OTP机制

基于质询—响应的身份鉴别在鉴别时,由验证者给声称者发送一个确定的值(质询消息),该值参与鉴别信息的运算。产生的非重复质询消息完全由验证者决定,使得每次传输的鉴别信息不同。这能很好地防止口令窃听和重放,但需要额外的通信花销。8.2基于口令的身份鉴别技术基于质询-响应的身份鉴别技术8.2基于口令的身份鉴别技术基于质询-响应的身份鉴别技术质询-响应身份鉴别技术示意图应答消息验证者声称者质询消息n

h比较是或不是

r

当声称者想让验证者进行鉴别时,声称者向验证者发出鉴别要求,验证者发给声称者一个自己产生的随机质询消息n。声称者输入口令p’,p’和id经过杂凑函数f计算的结果(等于q)再和n通过杂凑函数h计算得到r’,r’发送至验证者。验证者将保存的q和生成n的通过杂凑函数h计算得到r,通过比较r和r’是否相等来确定鉴别是否通过。8.2基于口令的身份鉴别技术基于质询-响应的身份鉴别技术

产生非重复值的能力完全掌握在验证者手中。提供了一种很好的重放检测能力。附加的复杂协议意味着这种机制不能与传统的简单口令协议结合使用。质询—响应的身份鉴别,其安全性一方面取决于散列函数的安全性;另一方面,由于是单向鉴别,还存在着验证者的假冒和重放攻击。这可以通过双向鉴别或时间戳来解决。例如,在系统每次输出的密文信息中附加日期与时间信息,鉴别双方都可以根据密文中的日期时间来判断消息是否是当前的。如果是前面的消息重放,用户则拒绝给出回答。8.2基于口令的身份鉴别技术基于质询-响应的身份鉴别技术8.2基于口令的身份鉴别技术S/Key一次性口令身份鉴别协议声称者U计算hM(pw||seed)验证者AS验证ID有效性查找相应种子seed和当前迭代值M计算h(OTPM-1),并与存储的OTPM比较,若通过则:OTPM←OTPM-1,M←M-1鉴别请求,IDseed,MS/Key一次性口令交互示意图OTPM-1=hM(pw||seed)8.2基于口令的身份鉴别技术S/Key一次性口令身份鉴别协议初始化与注册阶段选择散列函数h(·),如MD5或SHA-1。用户U注册时,验证者的鉴别服务器(AS,AuthenticationServer)为他创建一个用户信息条目,并生成一个随机种子seed发给用户U的客户端,客户端选择一个整数N(称为迭代值),并将种子seed连同口令pw进行N次散列运算,记为。这里符号“||”标识连接,并将散列结果传给鉴别服务器AS,AS保存:用户身份标识ID、种子seed、当前迭代值M(初始值为N-1)和当前鉴别口令OTPM(初始鉴别口令为OTPN-1=)。

8.2基于口令的身份鉴别技术S/Key一次性口令身份鉴别协议身份鉴别阶段用户U登录服务器AS时,输入其身份标识ID提交给AS。AS在接收到用户U的登录请求报文后,(1)验证ID的有效性。(2)AS查找种子seed和当前迭代值M,并传送给用户客户端。(3)声称者U输入口令pw,并由客户端计算一次性口令OTPM-1=,并将结果传给AS。(4)AS将客户端传来的一次性口令进行一次散列,即计算h(OTPM-1)=并将h(OTPM-1)与存储的当前鉴别口令OTPM进行比较。如果相同,则鉴别通过,并用新的一次性口令OTPM-1更新当前鉴别口令OTPM,M也相应减1当鉴别次数达到N-1时(即M=0),终止鉴别,用户重新注册,并生成新的迭代值N及初始鉴别口令。

用户U与鉴别服务器AS之间的鉴别交换信息中,没有直接传输口令的任何信息,而只是口令信息的散列结果。依据散列函数的单向性,攻击者通过拦截通信信道获取到当前鉴别口令(OTPM-1),但不能导出下次的鉴别口令(OTPM-2),甚至攻击者攻破了AS,浏览了用户的口令记录,也无法知晓用户的真正口令。S/Key利用告知服务器M次散列结果,并逐次减少散列迭代次数,从而得到N-1个可用的鉴别口令序列。而每一个鉴别口令仅使用一次,即使暴露第i次鉴别口令,并不影响后续口令的安全性。S/Key成功地防范了口令窃听并重放的攻击。8.2基于口令的身份鉴别技术S/Key一次性口令身份鉴别协议S/KEY系统不能防止小数攻击。

S/Key缺乏完整性保护机制。不能保护用户鉴别过程受到各种主动攻击:包括注入虚假信息,修改传输过程中的鉴别数据,修改口令文件等。

S/Key系统在实际应用时还需进一步完善。S/Key一次性口令身份鉴别协议8.2基于口令的身份鉴别技术

依据每个人的唯一生物特征鉴别,包括指纹、声音、笔迹、虹膜、掌型、脸型长相和DNA等。①指纹鉴别;②声音鉴别;③手迹鉴别;④虹膜扫描;⑤手形及掌纹;⑥面相;⑦DNA等。

基于生物特征的身份鉴别技术8.3基于生物特征的身份鉴别技术

在许多实际应用中,要让彼此互不相识的双方预先共享秘密并不是件容易的事,有没有不需要事先共享秘密的交互式用户身份鉴别协议呢?回答当然是肯定的,这就是基于零知识证明的身份鉴别技术。

零知识证明8.4零知识证明与身份鉴别技术交互式用户身份鉴别协议必须满足:(1)完全性(Completeness):若双方都诚实的执行协议,则验证者能以非常大的概率确信对方的身份。

(2)健全性(Soundness):若声称者不知道与他所声称的用户身份相关联的秘密信息,且验证者是诚实的,则验证者将以非常大的概率拒绝接受声称者的身份。(3)隐藏性(WitnessHiding):若声称者是诚实的,则不论协议进行了多少次,任何人(包括验证者)都无法从协议中推出声称者的秘密信息。

一个满足完全性和健全性的协议并不能保证协议是安全的。三个性质都满足的身份鉴别是否安全?零知识证明身份鉴别8.4零知识证明与身份鉴别技术

向别人证明知道某种事物或者拥有某种物品有直接证明和间接证明两种方法。直接证明就是出示或说出该事物,使别人知道和相信,从而得到证明。但这会使别人也知道或掌握这一秘密,是最大泄漏证明;另一种方法是用一种有效的数学方法证明其知道秘密,而又不泄漏信息给别人,这就是零知识证明问题。

证明方法8.4零知识证明与身份鉴别技术洞穴问题:在C和D之间存在一个暗门,知道咒语的人才能打开,否则洞穴就是一个死胡同。假设P知道咒语并想对V证明自己知道,但要求证明过程中不能泄露咒语。洞穴问题8.4零知识证明与身份鉴别技术图8.5零知识证明的洞穴问题证明的步骤如下:(1)V站在A点;(2)P一直走进洞穴,到达C点或者D点;(3)在P消失在洞穴中之后,V走到B点;(4)V随机选择左通道或者右通道,要求P从该通道出来;(5)P从V要求的通道出来,如果有必要就用咒语打开暗门;(6)P和V重复步骤(1)至(5)n次。洞穴问题8.4零知识证明与身份鉴别技术

如果P不知道这个打开暗门的咒语,那么只能从进去的通道出来。如果在协议的每一轮中P都能按V要求的通道出来,那么P所有n次都猜中的概率是1/2n。经过16轮后,P只有65536分之一的机会猜中。于是V可以判定,如果所有16次P的证明都是有效的,那么P一定知道开启洞穴C点和D点间暗门的咒语,而V却未能从证明过程获取到该咒语。

洞穴问题安全性分析8.4零知识证明与身份鉴别技术零知识证明示例8.4零知识证明与身份鉴别技术设n=p×q。用户A知道n的因子,想向用户B证明他知道n的因子,但不想向用户B泄漏n的因子:1、用户B随机选取一个大整数x,计算y≡x4modn。用户B将计算结果y

告诉用户A。2、用户A计算,并将结果z

告诉用户B。3、用户B验证z≡x2modn

是否成立。上述协议重复多次,若用户A每次都能正确地计算,则用户B就可以相信用户A知道

n的因子p

和q。反之,若第(3)步验证失败,则表明用户A并不真正知道

n

的因子。不知道n的因子p和q,计算是一个困难问题(称为二次方根问题)

Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术声称者A验证者BF-F-S身份鉴别方案交互示意图

随机比特b若b=0,验证:若b=0,r;若b=1,y=rs若b=1,验证:Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术初始化阶段由可信第三方机构TA随机选定两个相异素数的乘积作为模:为512位或1024位,m公开,并生成随机数v,使v为模m的平方剩余,即有小于m的解,且有(即v有模m的逆元)。注册阶段可信第三方机构TA以v作为公钥,然后计算整数s,使满足,s2v≡1modm,并将s作为秘密信息分发给声称者A。

Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术鉴别阶段(1)声称者A取随机数,计算,并将x发送给验证者B;(2)验证者B将一随机比特b发送给A;(3)若b=0,A将r发送给B;若b=1,A将发送给B;(4)若b=0,则B验证,从而证明声称者A知道;若b=1,则B验证,从而证明声称者A知道。Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术一次鉴定合格协议如果声称者A知道或,则验证者B认为声称者A为真;否则为假。这个协议是一次鉴定(accreditation)合格协议。声称者A与验证者B可以重复这个协议t次,直到验证者确信声称者A知道s。

Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术安全性分析(1)声称者A欺骗验证者B的可能性。声称者A不知道s,他也可取r,送给验证者B。当B送随机比特b给声称者A。A可将r送出,当b=0时,则验证者B可通过检验而受骗;当b=1时,则B可发现声称者A不知s,B受骗概率为1/2,但连续t次受骗的概率将仅为。Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术安全性分析(2)验证者B伪装声称者A的可能性。B和其他验证者C开始一个协议,第1步可用声称者A用过的随机数r,若C所选的b值恰与以前发给声称者A的一样,则B可将在第(3)步发的r重发给C,从而可成功地伪装声称者A,但C随机选b为0或1,故这种攻击成功概率仅为1/2,执行t次,则可使其降为。

Fiege-Fiat-Shamir身份鉴别方案8.4零知识证明与身份鉴别技术安全性分析

虽然声称者A知道可信第三方TA的公钥v,但要从s2v≡1

modm推出秘密信息s,需要求解模m的二次方根问题,等价于整数m因式分解的难题。另外,在F-F-S方案中,增加验证次数显然可以增强安全性,但却增加了用户A与验证者之间传送数据的次数。为了减少数据交换次数,可增加每轮验证的数量。为此,Feige,Fiat和Shamir提出F-F-S增强方案。F-F-S身份鉴别增强方案8.4零知识证明与身份鉴别技术F-F-S增强方案的基本思想仍是F-F-S方案,但采用了并行结构增加每轮鉴别次数,即在每一轮的鉴别中,产生多个位,相当于b是一个多维向量,减少了攻击成功的概率,从而增强了安全性。

Guillon-Quisquater身份鉴别方案8.4零知识证明与身份鉴别技术F-F-S方案是第一个实用的零知识身份鉴别协议,通过增加轮次来增强安全性和增加每轮的鉴别次数来减少计算量。但对于智能卡这样的应用,该算法不甚理想,与外部的交互很耗时间,同时每次鉴别存储量也较大。

8.4零知识证明与身份鉴别技术1988年由Guillou和Quisquater提出的基于RSA密码体制实现的方案(简称G-Q方案)可能更适于这些应用,将每次的信息交换和并行鉴别都控制到最少,每次证明只进行一次鉴别信息交换,但计算量比F-F-S方案大。安全性基于RSA体制的安全性。Guillon-Quisquater身份鉴别方案8.4零知识证明与身份鉴别技术Schnorr提出的身份鉴别方案的安全性基于计算离散对数的困难性。这是Schnorr在1991年提出的一种计算量少,通信量少,特别适用于智能卡的身份鉴别方案。该方案融合多个身份鉴别协议的思想,是最实用的身份鉴别协议之一,在许多国家申请了专利。

Schnorr身份鉴别方案8.4零知识证明与身份鉴别技术Schnorr身份鉴别方案声称者A验证者Be图8.9Schnorr方案交互示意图验证验证证书CA签名Sig计算y≡(se+r)

modq8.4零知识证明与身份鉴别技术系统初始化选定素数p,q,。为q阶元素,,α为GF(p)的生成元,则;和可信第三方机构TA的签名算法SigTA(·),对应签名验证算法记为VerTA(·)。选定安全参数,且。Schnorr身份鉴别方案8.4零知识证明与身份鉴别技术TA向用户A颁发身份证书(1)TA为用户A建立唯一身份标识信息IDA;(2)用户A秘密选定随机数s作为其秘密信息,,计算;并将IDA和v发送给TA;(3)TA计算签名Sig=SigTA(IDA,v),并将证书CA=(ID

温馨提示

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

评论

0/150

提交评论