1:N生物体认证、加密、署名系统的制作方法

文档序号:14213272阅读:134来源:国知局
1:N生物体认证、加密、署名系统的制作方法

本发明涉及基于个人的生物体信息来进行认证、加密、署名等处理的系统。



背景技术:

伴随社会整体的it化的进展,在银行atm、在线金融、卡结算、web服务、出入管理、考勤管理、旅馆、会员设施的利用等各种场景中,利用者的可靠的识别和认证正变得越来越重要。以往,使用密码、id卡等的识别/认证方式是主流,但是经常发生由于密码列表攻击、卡伪造等而造成的冒充的损害,作为更可靠且便利的认证手段,对于基于指纹、静脉、面部、虹膜等生物体信息对个人进行识别/认证的生物体认证技术的期待越来越高。

此外,伴随所利用的系统、服务的增加,一个用户必须管理的id/密码、卡的数量也增加,不仅便利性降低,而且也会产生密码的随意使用、卡被盗/伪造风险的增加等安全性降低的问题。

在这样的背景下,提出了用于仅通过生物体认证便能够利用各种服务的尝试,例如在fido联盟所制定的uaf规格中,定义了如下协议,即,在用户终端(智能手机、pc等)侧生物体认证成功的情况下,使用终端内的私有密钥在与服务器之间进行基于公开密钥加密技术的质询响应认证。用户预先在自己的终端登记自己自身的生物体信息,并且按照利用的各服务(例如在线结算、网络金融等)生成自己的私有密钥和公开密钥的配对,将私有密钥登记在终端,将公开密钥登记在各服务服务器,由此,以后仅对自己的终端提示生物体信息,就能够利用各服务。但是,在该方式中,用户需要预先将自己的生物体信息和每个服务的私有密钥登记到终端。因此,fido是以如下的使用方式为前提的,即,用户自己专有1、2个终端,对各服务的访问仅从该专有的终端进行。但是,在atm、pos终端、办公室、大学等,由多个或者不确定的许多的用户共享一个或者多个终端的使用方式、一个用户持有许多终端的情况、或者一个用户频繁地更换终端的情形下,在fido/uaf方式的情况下出现以下这样的课题,即,登记时的运用变得繁杂(便利性降低)、生物体信息、私有密钥这样的机密性高且敏感的信息的泄露风险升高(安全性降低)。

另一方面,作为保护预先登记/保存的生物体信息,大幅降低泄露风险的技术,被称为生物统计加密的技术正在受到关注。生物统计加密通过在登记时从生物体信息提取特征量x,对x加入随机数信息r来进行某种隐匿化处理,从而生成被称为辅助信息的数据h。辅助信息h保存在用户终端等中。在认证时通过从新取得的生物体信息提取特征量x’,并使用x’对辅助信息h进行复原处理,从而复原r’。当x’充分接近x时,并且只有此时才会成为正确的随机数信息被复原的(r=r’)。此外,对算法进行了设计,使得只要不知道充分接近x的x’,就很难从h推定x、r。除了能够通过登记并核对r的值或者r的哈希值从而将登记时的特征量x保持隐匿不变地进行认证以外,还能够将r的值或者r的哈希值视为私有密钥,通过进行数据的加密、解密、电子署名的生成处理,从而不直接保持私有密钥地实现基于生物体信息的加密/解密、电子署名。

通过将生物统计加密与fido/uaf规格进行组合,从而无需在终端侧保存生物体信息、私有密钥,取而代之仅保存辅助信息h即可。由此,能够降低生物体信息、私有密钥的泄露风险。但是,在应用于由多个或者不确定的许多用户共享一个或者多个终端的用法的情况下,仍然无法解决登记时的运用繁杂(便利性降低)这样的课题。此外,还存在如下课题,即,生物统计加密中的随机数信息r的复原处理有时需要纠错处理、加密学的处理等复杂的计算,在计算能力有限的终端内进行针对许多用户的辅助信息的复原处理在计算量方面困难的课题。

此外,基于fido/uaf的认证只能够在遵照该规格的服务服务器中利用。即使采用生物统计加密,也只能够在安装了该认证功能的服务服务器中利用。因此,对于利用密码认证、pki认证等现有的认证手段的现有的各种在线服务,不对服务器进行修改而仅通过生物体认证来利用服务在上述的技术的情况下无法实现。

在先技术文献

非专利文献

非专利文献1:y.dodis,et.al.,“fuzzyextractors:howtogeneratestrongkeys”,ineurocrypt2004,vol.3027oflncs,pp.523-540,2004.



技术实现要素:

发明要解决的课题

本发明的目的在于,在用户从一个或者多个终端利用已有的各种在线服务时,不对用户与终端的组合进行限定,并且不对服务服务器进行修改,而且不需要id输入、卡提示等,便可实现仅基于生物体认证的便利且安全的认证。此外,目的在于,此时,不将登记生物体信息、其特征量数据、私有密钥、密码、用户id、个人信息等机密性高的信息、敏感信息直接保存在终端、服务器中便可实现。

用于解决课题的手段

为了解决上述课题,本发明中的认证系统具备用户终端和认证服务器,其中,所述用户终端具备:传感器,其取得用户的生物体信息;特征提取部,其从所取得的生物体信息提取认证用特征数据;特征数据编码部,其对认证用特征数据进行编码而生成认证用编码特征数据;以及发送部,其向外部发送包含认证用编码特征数据的识别请求信息,所述认证服务器具备:db,其存放生物统计加密认证信息;检索部,其基于识别请求信息,检索db中包含的生物统计加密认证信息;解密处理部,其将认证用编码特征数据作为解密密钥对检索到的生物统计加密认证信息进行解密,并基于通过解密而得到的认证信息来唯一地识别用户;以及认证应答处理部,其针对识别出的用户,基于通过解密而得到的认证信息取代用户终端来进行认证应答处理。

发明效果

根据本发明,在用户从一个或者多个终端利用已有的各种在线服务时,不对用户和终端的组合进行限定,并且不对服务服务器进行修改,而且不需要id输入、卡提示等,仅通过生物体认证就能够安全/便利地进行认证。

附图说明

图1是表示本发明的实施例的功能构成的框图。

图2是表示本发明的实施例中的生物统计加密认证信息db的图。

图3是表示本发明的实施例中的登记处理的流程图。

图4是表示本发明的实施例中的认证信息例和生物统计加密处理的流程图。

图5是表示本发明的实施例中的认证处理的流程图。

图6是表示本发明的实施例中的1:n生物统计解密处理的流程图。

图7是表示本发明的实施例中的登记终端、用户终端、1:n认证服务器、服务提供服务器的硬件构成的框图。

具体实施方式

实施例1

以下,参照附图说明本发明的第一实施例。

本实施例能够应用于在atm、pos终端、办公室、大学等由多个或者不确定的许多用户共享一个或者多个的终端的情形。此外,能够应用于一个用户持有许多终端的情形。进而,能够应用于一个用户频繁地更换终端的情形。根据本实施例,在这些情形中,不需要id、密码、卡的提示等,仅利用生物体信息,就能够进行利用在线结算、店面的信用结算、网络金融、各种web服务、向信息系统的登录、检票机的开闭等各种服务时的用户认证、本人确认。

另外,生物体信息以遍布手指、手掌的静脉为代表,设想指纹、面部、虹膜等。

图1示出本实施例中的生物体认证系统的系统构成。本系统包括:登记终端100,将用户的生物体信息以及各种服务的认证信息变换成安全的形式来登记;用户终端200,用于用户利用各种服务;1:n认证服务器300,仅基于生物体信息来识别用户,并且以代理方式进行该用户的针对该服务的认证信息的解密和认证应答处理;服务提供服务器400,经由用户终端向该用户提供服务;以及网络500,将这些部分相连。这里,用户终端200设想办公室、大学、自己家等中的共享或者个人的pc、智能手机、平板电脑、或者银行atm、pos终端、各种业务用终端等。用户终端设想存在多个具备同样构成的终端。登记终端100可以是与用户终端200相同的终端,也可以是不同的终端。此外,登记终端的操作者可以是用户自身,也可以是与用户不同的操作者、系统管理者。服务提供服务器400可以是金融服务器、结算服务器、各种web服务服务器、企业/大学中的信息系统的认证服务器等,一般存在多个。在本实施例中,不需要将服务提供服务器400中的用户认证功能(例如密码basic认证、密码digest认证、pki认证、fido认证等)修改为生物体认证用,而能够直接进行利用。

登记终端100包括:用户指定或选择希望仅以生物体认证来利用的服务的服务指定功能101;输入服务中的用户id的用户id输入功能102;输入或者生成针对服务中的用户id的认证用私有信息(密码、私有密钥等)的认证用私有信息输入(生成)功能103;在用户认证功能是pki认证等的情况下生成与私有密钥对应的公开密钥证书的证书生成功能104;取得登记用生物体信息的传感器105;从登记用生物体信息提取登记用特征数据的特征提取功能106;为了将登记用特征数据隐匿而进行变换并生成变换特征数据的特征变换功能107;生成针对服务中的认证信息(详细情况在图4后述)的验证信息的验证信息生成功能108;以登记用变换特征数据作为一种加密密钥,基于生物统计(biometric)加密技术对认证信息与验证信息的组进行加密而生成生物统计加密认证信息的生物统计加密功能109;以及将生物统计加密认证信息与所述服务的标识符(sid)、服务中的认证方式的类别信息等建立对应并登记到1:n认证服务器300的登记功能110。

用户终端200包括:用于利用各种服务的服务利用功能201;取得认证用生物体信息的传感器202;从认证用生物体信息提取认证用特征数据的特征提取功能203;为了将认证用特征数据隐匿而进行变换并生成变换特征数据的特征变换功能204;针对来自服务的服务提供服务器400的用户识别/认证请求,利用1:n认证服务器300来进行认证应答的认证应答功能205。

另外,传感器202能够根据要取得的生物体信息而适当选择。例如,在作为生物体信息而采用手指静脉的情况下,设想对从未图示的光源照射后透过了手指的透过光进行摄像的摄像部等。

1:n认证服务器300包括:将生物统计加密认证信息与服务的标识符(sid)、服务中的认证方式的类别信息等建立对应地保存的生物统计加密认证信息db301;基于从用户终端200接收的服务标识符(sid)以及认证用变换特征数据,根据生物统计加密认证信息db301确定用户并复原与服务对应的认证信息的1:n生物统计解密功能302;以及基于解密后的认证信息,经由用户终端200以代理方式进行针对服务提供服务器400的用户认证应答处理的代理认证应答功能303。

服务提供服务器400包括:管理用户id、密码或者密码的哈希值、公开密钥等用户信息的用户信息db401;基于认证信息进行用户认证的用户认证功能402;以及在认证成功了的情况下对用户终端200进行服务提供的服务提供功能403。

这里所说的服务,如前面所述,设想在线结算、店面的信用结算、网络金融、各种web服务、向信息系统的登录、检票机的开闭等。

图2示出生物统计加密认证信息db301管理的信息。登记在db中的各记录包含:登记终端100或者1:n认证服务器300为了管理各记录而分配的管理id(mid);通过服务指定功能101指定的服务的标识符(sid);在服务中使用的认证方式的类别(密码basic认证、密码digest认证、pki认证、fido认证等);以及生物统计加密认证信息。一个记录可以包含多个生物统计加密认证信息。此外,也可以针对一个用户登记多个记录。

图7示出本实施例中的登记终端100、用户终端200、1:n认证服务器300、服务提供服务器400的硬件构成。如图所示,它们能够由cpu700、存储器701、存储装置702、输入装置703、输出装置704、通信装置705构成。

图3是表示本实施例中的登记处理流程的图。

s300是以下处理:登记终端100通过用户、操作者的操作等来确定要利用的服务的标识符(sid)及其认证方式类别。

s301是以下处理:登记终端100受理用户id(uid)的输入。

s302是以下处理:登记终端100受理与服务中的认证方式类别对应的认证用私有信息的输入、或者生成认证用私有信息。例如若是密码认证,则受理密码的输入。若是pki认证、fido认证,则生成私有密钥与公开密钥的配对。

s303是以下处理:登记终端100根据认证方式,生成认证信息的证书。例如若是pki认证,则生成包含公开密钥的公开密钥证书。

s304是以下处理:登记终端100经由传感器105取得用户的登记用生物体信息。

s305是以下处理:登记终端100从登记用生物体信息提取登记用特征数据。

s306是以下处理:登记终端100对登记用特征数据进行变换,生成登记用变换特征数据。针对具体的变换例,在图5的说明后段进行后述。通过本步骤,对于所述1:n认证服务器300,也能够将后述的认证用特征数据隐匿。不过,即使不执行本步骤,登记用特征数据也能够隐匿。

s307是以下处理:登记终端100赋予针对认证信息的验证信息。具体的方法在图4中后述。

s308是以下处理:登记终端100以登记用特征数据作为一种加密密钥,基于生物统计加密技术将认证信息加密而生成生物统计加密认证信息,并与服务标识符(sid)、认证方式类别一起发送给所述1:n认证服务器300。详细情况在图5的说明后段中后述。

s309是以下处理:1:n认证服务器300接收服务标识符(sid)、认证方式类别、生物统计加密认证信息,并在生物统计加密认证信息db301中登记记录。

图4是表示认证信息的具体例和生物统计加密处理的流程图。另外,图中的s307以及s308是与图3所示的步骤相同的步骤。

对于认证方式类别,设想了各种类别。例如在密码认证(basic认证、digest认证等)的情况下(认证信息例1),认证信息包含用户id(uid)和密码。在pki认证的情况下(认证信息例2),包含用户id(uid)、私有密钥以及公开密钥证书。在fido认证的情况下(认证信息例3),包含用户id(uid)和私有密钥。

在s307的验证信息赋予步骤中,针对认证信息,计算其校验和或哈希值、或者mac(消息认证代码)等,并作为验证信息赋予给认证信息。

在s308的生物统计加密步骤中,如图3中所述那样,是将登记用特征数据作为加密密钥来使用对认证信息进行加密,生成生物统计加密认证信息的处理。

图5是表示本实施例中的认证处理流程的图。

s500是以下处理:用户终端200受理用户的服务利用操作,确定服务标识符(sid),并且对与该服务标识符(sid)对应的服务提供服务器400进行服务利用请求。

s501是以下处理:接受s500的服务利用请求,服务提供服务器400对用户终端200进行用户id的识别/认证请求。

s503是以下处理:用户终端200经由传感器取得用户的认证用生物体信息。

s503是以下处理:用户终端200从认证用生物体信息取得认证用特征数据。

s504是以下处理:用户终端200对认证用特征数据进行变换,生成认证用变换特征数据,并与服务标识符(sid)一起发送给1:n认证服务器300。具体的变换例在图6后述。通过该步骤,对于1:n认证服务器300,也能够将认证用特征数据隐匿。

s505是1:n认证服务器300接收到服务标识符(sid)和认证用特征数据时的解密处理。具体来说,在从生物统计加密认证信息db301中检索与所接收的服务标识符(sid)一致的记录并且存在n个(n≥1)这样的记录时,进行1:n生物统计解密。该处理的详情在图6后述。另外,在该处理失败的情况下,作为认证失败而通知给用户终端200。在该情况下,用户终端200可以结束认证处理、或者返回到步骤(s502)再次尝试认证。

s506是以下处理:在s505的1:n生物统计解密成功的情况下,1:n认证服务器300使用解密后的认证信息(用户id和认证用私有信息),经由用户终端200,对服务提供服务器400进行代理认证应答。

s507是以下处理:通过用户终端200将从服务提供服务器400接收到的用户识别/认证请求(s501)转送到1:n认证服务器300,并接收1:n认证服务器300的代理认证应答(s506)而转送到服务提供服务器400,从而进行认证应答。另外,1:n认证服务器300也可以构成为,不经由用户终端200而与服务提供服务器400直接进行通信,来代行s507的认证应答处理。

s508是以下处理:服务提供服务器400接受来自用户终端200或者1:n认证服务器300的认证应答s507,进行用户认证处理。

s509是以下处理:在s508中用户认证处理成功的情况下,服务提供服务器400对用户终端200进行服务提供。另外,在s508中用户认证失败的情况下,不进行服务提供而结束处理。s510是以下处理:用户终端200在s508中用户认证处理成功的情况下,在s509中从服务提供服务器400接受服务提供,利用服务。

以下,关于特征变换步骤(s306)(s504)以及生物统计加密步骤(s308)、1:n生物统计解密步骤(s505)的具体例子,利用文章来补充说明。

作为例子,特征数据由nbit的比特串表现,在登记用特征数据与认证用特征数据之间的汉明距离为tbit(t<n)以下时,判定为是本人。

登记终端100以及用户终端200预先共享并保存nbit的私有的随机数信息r。

在特征变换步骤(s306)中,针对登记用特征数据x,计算与r之间的异或y=x(+)r((+)为异或的记号),将该y设为登记用变换特征数据和。

在认证流程中的特征变换步骤(s504)中也同样地,针对认证用特征数据x’,计算与r之间的异或y’=x’(+)r((+)为异或的记号),将该y设为登记用变换特征数据。

这里,注意,根据y(+)y’=(x(+)r)(+)(x’(+)r)=x(+)x’,y、y’之间的汉明距离与x、x’之间的汉明距离相等。

在生物统计加密步骤(s308)中,首先,构成码长n、最小距离2t+1的纠错码,从其中随机选择一个码字w。接着,对登记用变换特征数据y,计算辅助信息c=y(+)w。进而,使用适当的哈希函数h(·),计算k=hash(w)。将该k视为加密密钥,使用适当的加密算法(例如aes)对认证信息进行加密,生成加密认证信息。然后,将辅助信息c以及加密认证信息的组作为生物统计加密认证信息而输出。

图6是表示1:n生物统计解密步骤s505的详情的流程图。

s601是以下处理:用户终端200从生物统计加密认证信息db中,检索记录中的服务标识符与从用户终端200接收到的服务标识符(sid)一致的记录(假定存在n个)。

s602是以下处理:针对一致的各个记录中的生物统计加密认证信息,以认证用变换特征数据作为解密密钥对生物统计加密进行解密。具体来说,针对生物统计加密认证信息中包含的辅助信息c,计算与认证用变换特征数据y’之间的异或

w’=c(+)y’=(y(+)w)(+)(y’)=w(+)(y(+)y’)。

对于y(+)y’来说,在y与y’的汉明距离为t以下时,即在x与x’的汉明距离为t以下时,汉明权重成为t以下。因此,注意w’成为相对于w具有tbit以下的误差的信息。接着,对w’实施纠错码下的解密处理。纠错码由于其最小距离为2t+1,因而能够正确地纠正tbit以下的错误。因此,若x与x’的汉明距离是t以下(即,若输入了应判定为是本人的生物体信息),能够正确地复原w。即,在认证用编码特征数据与登记用编码特征数据的距离为给定值以下的情况下,会解密正确的认证信息。换言之,也可以说在认证用编码特征数据与登记用编码特征数据的类似度为给定值以上的情况下,能解密正确的认证信息。

若解密成功而得到w”,则计算k’=hash(w”),将k’视为解密密钥,使用前述的加密算法,对生物统计加密认证信息中包含的加密认证信息进行解密。

s603是以下处理:针对解密后的认证信息利用与步骤(s307)同样的方法来生成其验证信息,并与解密后的验证信息进行比较。若验证信息彼此一致,则设为“成功”,若不一致,则设为“失败”。此外,在步骤(s602)中的纠错码的解密处理本身失败的情况下(w”无法计算的情况下),在步骤(s603)中也视为“失败”。注意若x与x’的汉明距离为t以下,则成为w”=w、k’=k,在步骤(s603)中成为“成功”。

s604是以下处理:在步骤(s603)中成为“成功”的情况下对用户进行确定。在该情况下,w和w’之间的汉明距离d(≤t)与x和x’之间的汉明距离一致。在(s603)中成为“成功”的记录存在多个时,可以认为比t’小的记录更像是本人。因此,通过将d最小的记录设为本人、或者在d为比t小的某阈值t’以下这样的记录中将最初发现的记录设为本人等方法,来唯一地确定用户。

在本实施例中,在用户终端200中无论是根据用户的生物体信息生成的何种信息、还是构成用户的认证信息的何种信息,都不必保存。并且,在1:n认证服务器300、服务提供服务器400中,也不需要保存对用户终端200进行识别的何种信息。因此,在用户利用各种服务时,能够在不在事前登记或者限定要利用的用户终端的情况下,从任意的用户终端进行利用。此外,也能够由不确定的许多用户共享一个终端。

此外,在从服务提供服务器400侧观察本实施例的认证流程时,用户终端200的举动不与通常的密码认证、pki认证、fido认证中的处理相区别。因此,不对服务提供服务器400中的用户认证功能、用户信息db401中已经登记的用户认证信息(密码、公开密钥等)进行修正,用户能够利用仅基于生物体信息的认证方式。

进而,在本实施例的认证流程中,在用户利用服务时,不必对用户终端200提示或输入自己的用户id(uid)。这是因为,确定用户id的处理仅基于生物体信息在1:n认证服务器300中执行,并且也以代理方式执行到针对服务提供服务器400的用户id的提示处理。并且,由于登记/认证处理流程是基于利用生物统计加密形成的认证信息(包含用户id以及认证用私有信息)及其验证信息的加密和1:n生物统计解密处理来执行的,所以不必直接保存登记用生物体信息、登记用生物体特征数据、认证信息,可高度地保护这些信息。由此,能够将生物体信息、认证信息的泄露风险最小化而实现安全/安心的认证。

附图标记说明

100:登记终端101:服务指定功能102:用户id输入功能103:认证用私有信息输入(生成)功能104:证书生成功能105:传感器106:特征提取功能107:特征变换功能108:验证信息生成功能109:生物统计加密功能110:登记功能200:用户终端201:服务利用功能202:传感器203:特征提取功能204:特征变换功能205:认证应答功能300:1:n认证服务器301:生物统计加密认证信息db302:1:n生物统计解密功能303:代理认证应答功能400:服务提供服务器401:用户信息db402:用户认证功能403:服务提供功能500:网络700:cpu701:存储器702:存储装置703:输入装置704:输出装置705:通信装置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1