陈泗盛,林艳珍,郭永宁
(福建师范大学福清分校 电子与信息工程学院,福建 福清 350300)
一种基于生物特征密钥保护技术的身份认证方案
陈泗盛,林艳珍,郭永宁
(福建师范大学福清分校 电子与信息工程学院,福建 福清 350300)
传统的基于生物特征的身份认证的安全性严重依赖于生物模板的安全性,而在现有的认证系统下生物模板的安全性已得不到保障.将生物特征技术和密码认证技术相结合,不仅可以解决口令记忆问题,也解决了用户生物模板安全性的问题.因此研究将密码协议和生物特征进行融合设计身份认证方案.首先,对Hess签名算法进行修改使其支持多公钥参数;然后,结合Feng提出的基于生物特征的密钥保护技术,在基于签名的认证协议基础上设计一个基于生物特征和数字签名的身份认证方案,并对方案进行分析.
生物特征;密钥保护技术;Hess数字签名;身份认证方案
生物特征认证由于其方便性在许多领域逐渐取代了传统的基于口令的认证,如云系统服务器认证[1].传统的生物特征识别技术虽然不需要用户记住密码,但存储在数据库中的生物特征模板如果被人盗用或篡改而导致整个认证系统崩溃,被攻击的生物特征将不能再被使用[2].因此,必须考虑生物特征识别的安全问题.当前,解决这一问题的一种技术方向是,通过改变模板的存储方式来提高模板的安全性,如采用加密的方法[3]和基于生物特征的模糊承诺[4,5],这种认证方式只能实现单向的身份认证.另一类技术方向是将生物特征与密码技术进行结合,如基于生物特征的密钥产生技术的研究[6,7,8]和基于生物特征的密码算法[9,10].
将生物特征技术和密码技术相结合,不仅可以解决口令记忆问题,也解决了用户生物模板安全性的问题,同时可以采用不同的协议结果实现双向的身份认证.将生物特征与传统的基于密码学的身份认证进行结合,就必须解决生物特征数据的模糊性与密码学精确性存在的矛盾,而基于生物特征的密钥恢复技术能够很好的解决这一矛盾[2,8].因此,本文在数字签名基础上,结合Hao等[7]提出的基于容错编码的密钥恢复技术的基础上设计一个双向的身份认证方案.在该方案中,服务器不再是存储生物特征模板而是生物特征与认证密钥共同生成的编码信息,同时用户也无需记忆认证密钥,最终实现了用户和认证单元之间的双向认证.最后分析所设计的基于生物信息的身份认证协议的优越性与安全性.
1.1 基于生物特征的密钥保护机制
Hao[7]等通过使用线性纠错码构造级联码的方式实现模糊的接受生物特征值.在他们的方案中使用了一个外层是Hadamard码和内层是Reed-Solomon码的级联码.其中,外层Hadamard码是在二进制的级别上处理随机误差,而内层的Reed-Solomon码是在分组的级别上解决光线等突发错误.
在该方案中,Reed-Solomon码用RS(ns,ks,ts)表示,其中ks表示编码前的分组数,ns表示编码后的分组数,ts代表可以被纠正的分组校验符个数.对于RS(ns,ks,ts)的每个分组的输入长度和输出长度都是m比特.在这个编码后,每个mbit分组用Hadamard码再进行编码.
1) 编码阶段
首先产生一个随机的比特串作为密钥sk,sk的长度||sk||=(ks+1)*(||θref||/2ks-2ts),θref表示注册时的生物特征数据.然后采用级联码对sk进行编码得到伪生物特征数据θps=encode(sk),其中||θps||=||θref||.最后再对伪生物特征数据θps与模板的生物特征数据θref进行异或操作θlock=θps⨁θref.其中的θlock可以认为是安全的,因为从θlock中无法推断出真正的生物数据是什么,也无法知道隐藏在生物数据中的密钥sk.最后将θlock与sk的哈希函数值H(sk)一起存储智能卡中,并丢弃sk.
2) 解码阶段
用户用重新采集的生物数据θsam对θlock进行解密尝试恢复sk,操作如下
sk*=decode(θlock⨁θsam)=decode(encode(sk)⨁θref⨁θsam)=decode(encode(sk)⨁er)
其中er就是两次采集生物数据的误差向量.修正错误和恢复隐藏在生物数据内部的sk成为了生物识别技术的关键.如果这个er是在可修正的范围内的,则恢复出的sk*的哈希函数值H(sk*S)sk的哈希函数值H(sk)相等。即,若H(sk*)=H(sk),则密钥恢复成功,否则拒绝接受.
1.2 基于身份的Hess数字签名方案
数字签名由公钥密码发展而来,它在网络安全,包括身份认证、数据完整性、不可否认性以及匿名性等方面有着重要的应用.1984年,Shamir最早提出了基于身份的加密和签名方案思想,方案中不使用任何证书,直接将用户的身份作为公钥,以此来简化公钥基础设施PKI(Pubkic Key Infrastructure,PKI)中基于证书的密钥管理过程,随后有许多基于身份的签名方案被提出.例如2000年Sakai等[11]最早提出基于weil对的基于身份的数字签名方案;Paterson[12]提出了比Sakai等更有效的基于双线性对的数字签名方案;Hess[13]提出了一个在这几个方案中效率较高的可证明安全的基于双线性对的数字签名方案.
Hess的签名方案由4个部分组成,分别是系统初始化、密钥生成、签名和验证.具体过程如下:
1) 系统初始化:
2) 密钥计算
假设id是用户Alice的公开身份,则可信中心PKG(Private Key Generator,PKG)计算Qid=H1(id),Sid=sH1(id),Qid和Sid分别作为Alice的公钥和私钥.
3) 签名算法
假设M是Alice要签名的消息,签名步骤如下:
1.随机选取P1∈G1*,k∈Z1*
2.计算r=e(P1,P)k,v=H2(M,r),u=vSid+kP1
〈u,v〉就是M的数字签名结果,然后Alice把〈M,u,v〉发送给验证者Bob.
4)验证算法
Bob收到Alice的签名消息后,进行如下操作验证:
1.计算r*=e(u,P)·e(Qid,-Q0)v
2.验证v=H2(M,r*)这个等式是否成立.如果成立,则验证成功,否则失败.
2.1 多公钥参数的Hess身份签名方案
这部分将对Hess签名方案进行修改.在新的签名方案中,用户的签名公钥除了包含一般的身份信息外,还引入根据用户选取的秘密密钥key计算得到的部分公钥Q1.在认证方案的设计中,将用生物特征来保护秘密密钥key,从而实现生物特征和签名方案的结合.
1) 系统初始化
{0,1}*→G1*,H2:{0,1}n×G2→Zq*.公开系统参数〈G1,G2,e,P,q,n,Q0,H1,H2〉.
2) 私钥计算
1.Qid=H1(id),Q2=H2(Qid,Q1);
2.Sid=sQ2,〈Q1,Q2〉为用户的签名公钥和〈key,Sid〉为用户的签名私钥.
3) 签名过程
用户随机选取p1∈G1*
1.计算Q1=keyP
2.计算r=e(P1,Q1),v=H2(M,r)
3.u=vSid+keyP1,〈u,v〉即是用户对消息的签名.
4) 验证过程
验证者先计算Q2=H1(id,Q1),r*=e(u,P)·e(Q2,-Q0)v,然后验证等式v=H2(M,r*)是否成立,如若成立,则验证成功,否则相反.
2.2 方案的描述
将结合生物特征和上一节提出的数字签名方案设计一个基于生物特征的身份认证协议.认证系统是一个分布式的系统,主要由三部分组成:客户端,认证系统和认证服务器,各个部分的功能分布如下:①认证服务器系统:负责用户的注册和用户注册信息的保存,同时协助认证单元完成对用户身份的验证,一个系统只有一个认证服务器;②认证单元:认证单元负责响应用户的认证请求,在一个认证系统中可以有多个的认证单元,认证通过后为用户提供相关的服务,如运行登录系统或则允许通过认证单元接入网络等;③客户端:客户端是用户的操作平台,负责对用户生物特征数据的采集与提取,负责用户需要的相关验证运算.部分符号说明见表1.
表1 部分符号说明
2.2.1 注册阶段
用户选取部分私钥key,通过客户端计算Q1=keyP然后把Q1和生物征数据w以及身份id通过安全信道发送给认证服务器ASU,ASU接收到注册信息后,检查用户的唯一性后,进行如下计算:
1.Qid=H1(id);
2.Q2=H2(Qid,Q1);
3.Sid=sH1(id,Q1);
〈Q1,Q2〉和〈key,Sid〉分别是用户的公钥和私钥.然后用级联码函数对私钥进行编encode(key||Sid),再与生物特征值w进行异或操作θlock=encode(key||Sid)⨁w,最后ASU删除key,并把id,〈Q1,Q2〉和θlock存储在安全数据库中.
2.2.2 认证阶段
认证过程流程可见图1,具体描述如下.
图1 认证流程图
1)U→AU:id
客户端U向认证系统AU提交用户的身份id,请求AU的认证.
2)AU→ASU:idS||id
AU中认证单元将用户的身份发送给ASU,请求得到用户的注册信息.
3)ASU→AU:id||Q1||Q2||θlock
ASU查询安全数据库找出id对应的信息,然后将请求认证的用户的信息id||Q1||Q2||θlock发给AU.
4)AU→U:θlock||RS
认证单元接收到AU发来的请求认证的用户的信息后暂时存储Q1,Q2,然后产生一个随机数a,计算RS=aP,最后把θlock和RS发回给U.
5)U→AU:
U将新采集的用户生物特征值w*和收到的θlock用级联码解码函数进行解码(key||Sid)=decode(w*⨁θlock)于是成功恢复用户的私钥。然后产生一个随机数b,计算RU=bP.最后将RU、RS以及用户的身份当做明文消息,即M=RS||id||RU.用户要对M进行数字签名U需要进行以下的计算:
1.计算Q1=keyP
2.计算r=e(P1,Q1)
3.计算v=H2(M,r)
4.计算u=vSid+keyP1,
〈u,v〉即是用户对消息的签名,然后U将〈M,u,v〉发送给AU中的认证单元.
6)AU→U:EaRU(RU)
AU对U发来的用户的签名进行认证,于是进行如下计算:
1.计算r*=e(u,P)·e(Q2,-Q0)v
2.验算等式v=H2(M,r*)是否成立.若成立,则用户通过认证单元的认证,否则,拒绝为用户提供相关的服务.
3.AU从M中可得到U发来的随机数RU,然后用密钥aRU加密RU即EaRU(RU).最后把EaRU(RU)返回给U.
7)U计算EbRS(RU)与AU发来的EaRU(RU)是否相等,如若相等,则用户认证了AU的合法性,用户和AU也实现了双向认证.通信双方事先规定将aRU=abp=bRS作为接下来通信中的共享密钥.
2.3 方案分析
2.3.1 生物特征模板的安全性
传统的基于生物特征的认证系统的认证过程是将用户提交的模板与注册时存储在服务器的模板进行匹配,只有相似度达到一定时才认定用户是合法用户.但存储在数据库中的模板一旦遭到攻击,不仅这个系统崩溃,其他用到同样的生物特征的系统也会崩溃,而且用户将终身不能再用这个生物特征,攻击者也有可能利用盗用的生物特征进行一些犯罪行为.
在本方案中服务器ASU存储的是θlock,不再是生物特征模板.θlock是θlock=encode(key||Sid)⨁w计算得到的,θlock不仅将密钥隐藏了起来,同时也保护了用户的生物特征值,即用户的隐私信息是安全的.本方案中双方认证过程中产生一次性随机数保证消息的新鲜性,避免了重放攻击.当用户的某个应用的密钥泄露出去了,用户只要重新生成部分私钥key并重新提交生物特征w,然后ASU再将θlock=encode(key||Sid)⨁w存储起来就行了.不同的应用系统主密钥s不同,就会产生不同的用户私钥,因此一个应用系统的崩溃不会影响到用同一生物特征的其他系统.
2.3.2 方案的安全性分析
首先,先分析修改签名的正确性,即证明当正确签名时会有等式v=H2(M,r*)成立.
证明如下,因为
r*=e(u,P)·e(Q2,-Q0)v
=e(vSid+keyP1-svQ2,P)
=e(svQ2+keyP1-svQ2,P)
=(keyP1,P)
=(P1,keyP)
=(P1,Q1)=r
所以,H2(M,r*)=H2(M,r)=v.同时,我们在Hess签名算法中把签名算法中的随机数key用作用户的部分私钥,没有改名签名的整体结构,因此修改后的签名算法安全性等同于原来的签名算法.
其次,认证单元对用户的认证是通过修改的Hess签名来实现的.即,AU利用从服务器获取的用户的公钥〈Q1,Q2〉来验证用户的身份信息,由签名的安全性可知只有持有公钥对应的私钥才能签署正确的签名.而由(key||Sid)=decode(w*⨁θlock),可知只有当用户拥有正确的生物特征w,才能在服务器的协助下恢复出私钥(key||Sid).因此,当认证单元验证了签名〈M,u,v〉就可以验证用户的合法身份.另外,为了防止中间人攻击,阻止第三方假冒认证单元,我们要求对协议中随机数的进行认证.协议中体现在对等式EbRS(RU)=EaRU(RU)的验证.同时,本方案用户的私钥和公钥由用户和ASU共同产生,这样就可以避免ASU把用户的私钥信息泄露给攻击者进行伪造.
本文提出了基于生物特征和数字签名的身份认证方案.在该方案中利用基于生物特征的密钥保护机制把签名私钥安全存储在服务器中.当利用签名算法进行身份认证时,在服务器存储信息的协助下用户能通过自身的注册的生物特征恢复出签名私钥,并对特定信息进行签名用以实现身份认证.通过分析,我们的方案是安全可行的,从而实现用户无需记忆任何的口令,只要提交注册用户的生物特征值就能实现身份认证.
[1] Himabindu Vallabhu,R V Satyanarayana.Biometric authentication as a service on cloud:novel solution[J].International Journal of Soft Computing and Engineering (IJSCE),2012,2(4):163-165
[2] 张 宁,臧亚丽,田 捷.生物特征与密码技术的融合——一种新的安全身份认证方案[J].密码学报,2015,2(2):159-176
[3] GOBI M,KANNAN D.Asecured Public key cryptosystem for biometric encryption[J]. Internation journal of computer science and network security,2015,15(1):49-57
[4] A.K.Das and A.Goswami.A robust anonymous biometric-based remote user authentication scheme using smart cards[J].Journal of King Saud University-Computer and Information Sciences,2015,27:193-210
[5] F.Hernandez,L.Herna’ndez and C.Sa’nchez.Biometric fuzzy extractor scheme for iris templates[C]//In Proc.the 2009 International Conference on Security and Management(SAM’09),2009,563-569
[6] 董凌骏.基于生物测量的密钥生成方案研究[D].上海:上海交通大学,2009
[7] Feng Hao,Ross Anderson,John Daugman.Combining crypto with biometrics effectively[J].Ieee Transactions on Computers,2006,55(9):1081-1088[8] Mr.P.Balakumar,Dr.R.Venkatesan.A survey on biometric based cryptographic key generation schemes[J].International Journal of computer science an information technology and security,2012,2(1):80-85
[9] 刘 影.基于生物特征的身份认证研究与设计[D].成都:西南交通大学,2006
[10] WANG M,TANG D M,WANG H J.A biometric ring signature scheme for authorized subsets[C]//2012 International Workshop on Information and Electronics Engineering,Procedia Engineering,2012,28,3525-3529
[11] Sakai R,Ohgishi K and Kasahara M.Cryptosysterns based on pairing,2000 symposium on cryptography and information Security[C]//The proceeding of SCIS2000,Okinawa,Japan,2000,26-28
[12] Paterson K G.ID-based signatures from pairing on elliptic curves[J].Electronic Letter,2008,38(18):1025-1026
[13] Hess F.Efficient identity based cryptographic schemes for user identification,digital signature,and key distribution[J].IEEE Journal on selected areas in communications,1993,11(5):757-760
An Identity Authentication Scheme Based on Key Protection with Biometric
CHEN Sisheng, LIN Yanzhen, GUO Yongning
(School of Electronic and Information Engineering, the Fuqing Branch of Fujian Nomal University, Fuqing 350300, China)
The security of the traditional biometric authentication relies heavily on the safety of the biological templates, but the security of the template cannot be safeguar. In order to design more security authentication system, it can combine the cryptography with the biometric. This thesis proposed a authentication protocol based on the biometric and digital signature,in which it applies the key protection techinique based on biometric to combine the biometric with cryptography. The given schmeme not only retain the advantage the biometric authentication, but also improve the security of authentication system.
biometric; key protection; digital signature; identity authentication scheme
2016-08-17
福建省教育厅科技项目(JB14132);福建师范大学福清分校科研创新基金项目(KY2014022).
陈泗盛(1981-),男,福建泉州人,硕士,福建师范大学福清分校讲师,主要从事信息安全研究.
1672-2027(2016)03-0027-05
TP393
A