生物体签名系统及生物体签名方法与流程

文档序号:18873698发布日期:2019-10-14 20:07阅读:564来源:国知局
生物体签名系统及生物体签名方法与流程

本申请主张2017年6月9日申请的日本专利申请第2017-114023号的优先权,并通过参照其内容而将其引入本申请。

本发明涉及生物体签名系统及生物体签名方法。



背景技术:

有一种基于指纹、面部、静脉及虹膜等身体特征对个人进行特定的生物体认证技术。在该生物体认证技术中,预先登记从用户获取的生物体信息,通过将其与在认证时获取的生物体信息进行核对来判定是否为本人。生物体信息由于是终生不会改变的特征,所以作为非常敏感的个人信息来处理。在生物体信息万一泄露的情况下,由于用户无法再继续安全地使用生物体认证,所以在生物体信息的管理上谋求高安全性。

作为在安全保护生物体信息的同时以生物体信息为密钥来实现pki(publickeyinfrastructure:公开密钥基础设施)的技术,已知日本特开2013-123142号公报(专利文献1)。在该公报中,记载有“在登记时针对用户的生物体信息的特征量嵌入规定的私有密钥,并与对应的公开密钥构成组来发布生物体证书。在签名时针对用户的生物体信息的签名用特征量重新生成临时私有密钥与临时公开密钥的配对,并使用临时私有密钥创建针对消息的签名,在签名用特征量中嵌入临时私有密钥而创建承诺,并将所述临时公开密钥、所述签名和所述承诺的组作为生物体签名,在生物体签名验证时用临时公开密钥验证签名,从生物体证书、承诺和临时公开密钥生成差分私有密钥和差分公开密钥并验证它们的对应关系。”(参照摘要)。

现有技术文献

专利文献

专利文献1:日本特开2013-123142号公报



技术实现要素:

在以往的生物体认证中,评价所登记的生物体信息与认证对象的生物体信息的相似度,若相似度为一定水平以上则认证成功。在此,每次获取生物体信息都会产生以坐标、角度的偏差为代表的误差。因此,在核对生物体信息时,需要针对坐标、角度的误差采用稳健(robust)的方式。

专利文献1所记载的技术将在登记时获取的生物体信息和在认证时获取的生物体信息转换成固定长度的矢量,若利用该矢量之间的范数(norm)的相似度为一定水平以上,则判定为认证已成功。在此,由于矢量之间的范数不允许坐标、角度的偏差等误差,所以专利文献1所记载的技术需要分别针对允许范围内的坐标、角度等参数生成矢量、并验证认证是否成功。

因此,专利文献1所记载的技术中,认证的计算量与允许的参数的数量及范围的大小成比例地增加。于是,本发明的一个方式的目的为,减少认证时的计算量,实现高速的生物体签名系统。

本发明的一个方式采用以下结构。一种生物体签名系统,其包括处理器和存储器,所述存储器保持第一模板和第二模板,该第一模板表示通过规定的转换将从用户的规定部位得到的第一生物体信息进行转换后的结果,该第二模板表示通过规定的单向性转换将从所述用户的所述规定部位得到的第二生物体信息进行转换后的结果,所述处理器获取认证对象的所述第一生物体信息和所述第二生物体信息,根据所述获取到的第一生物体信息生成所述认证对象的第一模板,对使用参数修正后的所述认证对象的第一模板与所述存储器保持的第一模板之间的相似度比规定条件高的所述参数进行特定,分别使用包括所述特定出的参数在内的规定范围所包括的参数来修正所述认证对象的第二生物体信息,分别根据所述修正后的第二生物体信息生成所述认证对象的第二模板,并将所述生成的第二模板分别与所述存储器保持的第二模板进行比较来判定所述认证对象的认证成功与否。

发明效果

本发明的一个方式能够高速地执行生物体签名中的认证。上述以外的课题、构成及效果通过以下实施方式的说明而阐明。

附图说明

图1是表示实施例1中的生物体签名系统的结构例的框图。

图2是表示实施例1中的认证客户端的硬件结构例的框图。

图3是表示实施例1中的模板登记处理的一个例子的流程图。

图4是表示实施例1中的模板储存数据库的数据结构的一个例子的说明图。

图5是表示在实施例1中认证客户端进行1∶1型生物体签名验证处理的情况下的生物体签名处理的一个例子的流程图。

图6是表示实施例1中的第一模板中间核对处理的一个例子的流程图。

图7是表示实施例1中的第一模板中间核对结果的一个例子的框图。

图8是表示实施例1中的第二模板核对处理的一个例子的流程图。

图9是表示在实施例1中认证服务器进行1∶1型生物体签名验证的情况下的生物体签名处理的一个例子的流程图。

图10是表示实施例2中的1∶n型生物体签名验证处理的一个例子的流程图。

图11是表示实施例2中的候选用户集(userset)的数据结构的一个例子的说明图。

具体实施方式

以下,参照附图来说明本发明的实施方式。应注意本实施方式只不过是用于实现本发明的一个例子,并不限定本发明的技术范围。

实施例1

实施例1对由用户输入id的1∶1型生物体签名系统进行说明。本实施例的生物体签名系统通过将第一生物体信息有效利用于中间核对、并将第二生物体信息有效利用于生物体签名而能够高速地进行认证和签名验证。

图1是表示实施例1的生物体签名系统的结构例的框图。生物体签名系统包括通过网络而彼此连接的认证客户端1000和认证服务器1200。此外,生物体签名系统也可以不是如图1那样的客户端服务器系统,而是通过一台计算机来实现。

认证客户端1000例如包括id获取部1010、生物体信息获取部1020、第一特征量提取部1030、第一模板生成部1040、第二特征量提取部1050、第二模板生成部1060、通信部1070、第一模板中间核对部1080、第二模板核对部1090及签名生成部1100。

id获取部1010经由键盘等输入装置受理用户的id的输入。生物体信息获取部1020例如经由指纹传感器、静脉传感器及照相机等来获取用户的第一生物体信息(例如手的指纹或皱纹等表层特征)及第二生物体信息(例如手的静脉等深层特征)。

第一特征量提取部1030从第一生物体信息中提取第一特征量(例如强调指纹的特征点或手的表皮皱纹的图像本身等)。第一模板生成部1040对第一特征量实施转换(例如相关性不变随机过滤等可撤销的转换等)来生成第一模板。第二特征量提取部1050从第二生物体信息中提取第二特征量(例如强调静脉的图像等)。

第二模板生成部1060对第二特征量实施生物体签名系统中的单向性转换来生成第二模板。单向性转换是指基于能够容易地计算正向转换但难以计算反向转换的转换函数(例如模糊签名等)进行的转换。

通信部1070进行与认证服务器1200之间的通信。第一模板中间核对部1080核对预先登记的第一模板和认证对象的第一模板来获取中间核对结果。第二模板核对部1090核对预先登记的第二模板和认证对象的第二模板来获取最终的核对结果(包括表示认证成功或失败的结果及在认证成功时提取的私有密钥等)。签名生成部1100使用在核对第二模板且认证成功的情况下得到的私有密钥来生成生物体签名。

认证服务器1200例如包括通信部1210、第一模板中间核对部1220、模板获取部1230、签名验证部1240及模板储存数据库1290。

通信部1210进行与认证客户端1000的通信。第一模板中间核对部1220核对预先登记的第一模板和认证对象的第一模板来获取中间核对结果。基于第一模板中间核对部1220的处理与基于第一模板中间核对部1080的处理相同。即,存在认证客户端1000进行正式处理的情况、和认证服务器1200进行正式处理的情况。

模板获取部1230从模板储存数据库1290获取第一模板及第二模板。签名验证部1240执行从认证客户端1000接收的签名的验证。模板储存数据库1290例如将从用户获取到的第一模板及第二模板与用户id相关联并进行储存。

图2是表示认证客户端1000的硬件结构例的框图。由于认证服务器1200的硬件结构也是同样的,所以在此仅说明认证客户端1000的硬件结构。认证客户端1000例如由包括cpu(centralprocessingunit:中央处理器)1101、主存储装置1102、辅助存储装置1103、输入装置1104、输出装置1105及通信装置1106的计算机构成。

cpu1101包括处理器,执行储存于主存储装置1102内的程序。主存储装置1102包括作为非易失性的存储元件的rom及作为易失性的存储元件的ram。rom储存不变的程序(例如bios)等。ram是如dram(dynamicrandomaccessmemory:动态随机存取存储器)那样的高速且易失性的存储元件,临时储存处理器执行的程序及在执行程序时使用的数据。

辅助存储装置1103例如是磁存储装置(hdd)、闪存(ssd)等大容量且非易失性的存储装置,储存cpu1101执行的程序及在执行程序时使用的数据。即,程序被从辅助存储装置1103读取并被加载至主存储装置1102,由cpu1101执行。

输入装置1104是用于接受来自用户的输入的装置,包括键盘和鼠标等。输出装置1105是将程序的执行结果以用户能够视觉辨认的形式输出的装置,包括显示装置和打印机等。通信装置1106是按照规定的协议来控制与其它装置的通信的装置,用于由通信部1070及通信部1210进行的通信。

cpu1101执行的程序经由移动介质(cd-rom、闪存等)或网络被提供至认证客户端1000,并被储存于作为非瞬时存储介质的非易失性的辅助存储装置1103。因此,认证客户端1000只要具有从移动介质读入数据的接口即可。

认证客户端1000是物理性地在一台计算机上构成或在逻辑性或物理性地构成的多台计算机上构成的计算机系统,可以在同一计算机上以分开的线程动作,也可以在多个物理性的计算机资源上构筑的虚拟计算机上动作。

cpu1101例如通过根据被加载至主存储装置1102的id获取程序进行动作而作为id获取部1010发挥功能,并通过根据被加载至主存储装置1102的生物体信息获取程序进行动作而作为生物体信息获取部1020发挥功能。关于认证客户端1000所包括的其它部分也是同样的。

此外,在本实施方式中,生物体签名系统使用的信息不依赖数据结构,可以由任意数据结构来表达。例如,从表格、列表、数据库或队列中适当选择的数据结构体能够储存信息。

图3是表示模板登记处理的一个例子的流程图。首先,认证客户端1000的id获取部1010获取用户id(s2010)。具体而言,id获取部1010例如获取经由输入装置1104从用户输入的由字母数字等构成的字符串的用户id。另外,id获取部1010也可以不从外部获取用户id而是例如随机或顺序地将由字母数字等构成的字符串作为用户id发布。

接着,生物体信息获取部1020获取用户的生物体信息(s2020)。在本实施方式中,生物体信息获取部1020从同一部位获取第一生物体信息及第二生物体信息来作为用户的生物体信息。第一生物体信息是用于中间核对的生物体信息。第一生物体信息不用于生物体签名,而是用于获得有效利用于生物体签名的生成和验证的中间核对结果。

另外,第二生物体信息是用于生物体签名的生物体信息,用于在高度保护生物体信息的同时实现认证和签名。第一生物体信息和第二生物体信息是能够从用户的同一部位获取的信息。另外,期望第一生物体信息和第二生物体信息的彼此相关性低。具体而言,期望的是,例如在第一生物体信息被泄露或公开的情况等下,无法从第一生物体信息容易地推测出第二生物体信息。

作为第一生物体信息和第二生物体信息的获取方法,例如有以下方法。第一个方法是在生物体信息的传感阶段获取两个不同的生物体信息。该方法具体为例如通过切换向手的同一部位照射的光的频率或其图像处理方式而将指纹及/或皱纹等表层特征获取为第一生物体信息,并将静脉等深层特征获取为第二生物体信息。

另外,第二个方法是在暂且获取了单一的生物体信息之后,在后期处理中将该生物体信息分离成第一生物体信息和第二生物体信息。具体而言,例如基于亮度值、色调、频率及相位等各种标准,从自同一部位获取的图像生成相关性低的两个生物体信息,并将所生成的生物体信息分别用作第一生物体信息及第二生物体信息。不管在哪个方法中,都期望储存于模板储存数据库1290内的第一生物体信息和第二生物体信息的相关系数是规定值以上。

另外,该方法也可以通过对从同一部位获取到的图像执行强调处理及离散化等不同的特征提取处理而生成具有不同特征的多个图像,并将其分别用作第一生物体信息及第二生物体信息。

第一特征量提取部1030从由步骤s2020获取到的第一生物体信息中提取第一特征量(s2030)。第一特征量是对第一生物体信息实施某种特征提取处理而得到的特征量。在第一生物体信息是指纹图像的情况下,第一特征量提取部1030例如将被称为细节(minutia)的特征点的集合获取为第一特征量。另外,在第一生物体信息是表皮的皱纹信息的情况下,第一特征量提取部1030例如将通过图像处理而稳定的皱纹信息提取为第一特征量。

接着,第一模板生成部1040对由步骤s2030得到的第一特征量实施转换来生成转换后的结果即第一模板(s2040)。该转换包括不对第一特征量实施转换的恒等转换。另外,第一模板生成部1040也可以作为第一模板生成中的转换而执行被称为可撤销生物体认证的、通过核对转换后的模板而能够计算转换前的特征量之间的相关性的转换。

另外,第一模板生成部1040也可以作为第一模板生成中的转换而执行des(dataencryptionstandard:数据加密标准)、aes(advancedencryptionstandard:高级加密标准)等一般加密。

接着,第二特征量提取部1050从由步骤s2020得到的第二生物体信息中提取第二特征量(s2050)。第二特征量是对第二生物体信息实施某特征提取处理而得到的特征量。在第二生物体信息是静脉图像的情况下,第二特征量提取部1050例如将在进行了强调静脉的图像处理之后进行了亮度值离散化的静脉图案图像提取为第二特征量。

接着,第二模板生成部1060对由步骤s2050得到的第二特征量实施保护转换、即单向性转换来生成转换后的结果即第二模板(s2060)。该保护转换例如包括专利文献1公开的生物体证书生成。该生物体证书是与将生物体信息作为私有密钥时的公开密钥相当的信息,用于从生物体信息进行的私有密钥提取和生物体签名的验证。在本实施例中,第二模板生成部1060将专利文献1中的相当于生物体证书的信息生成为第二模板。

接着,通信部1070将由步骤s2040得到的第一模板、由步骤s2060得到的第二模板、和由步骤s2010得到的用户id建立关联并向认证服务器1200发送(s2070)。

认证服务器1200的通信部1210接收由步骤s2070发送的信息(s2110),并将其向模板储存数据库1290内储存(s2120)。此外,在步骤s2010中,id获取部1010也可以受理用户的属性信息的输入。属性信息是从生物体信息得到的用于将用户分类的信息。用户的性别、年龄及人种等均为属性信息的一个例子。在步骤s2010中得到了用户的属性信息的情况下,在步骤s2070中,通信部1070也将该属性信息与用户id建立关联并向认证服务器1200发送。

认证系统通过以上步骤进行用户的初始登记并储存用户的模板。在结束该初始登记之后,用户能够实施后述的认证和生物体签名。

图4是表示模板储存数据库1290的数据结构的一个例子的说明图。模板储存数据库1290包括一个以上的用户记录8100。用户记录8100储存每个用户的数据。用户记录8100例如包括用户id8110、第一模板8120、第二模板8130及属性信息8140。

用户id8110是由步骤s2010赋予的与用户唯一相关联的标识符,由例如以字母数字表示的字符串构成。第一模板8120是由步骤s2040生成的用于中间核对的模板。第二模板8130是由步骤s2060生成的用于生物体签名的模板。属性信息8140储存在步骤s2010中输入的属性。用户的性别、年龄、人种及指纹的类型等均为属性的一个例子。

图5是表示认证客户端1000进行1∶1型生物体签名验证处理的情况下的生物体签名处理的一个例子的流程图。首先,认证客户端1000的id获取部1010获取认证对象的用户id,且通信部1070将该用户id向认证服务器1200发送(s3010)。

接着,认证服务器1200的通信部1210接收在步骤s3010中被发送的用户id(s3210),模板获取部1230从模板储存数据库1290获取与所接收的用户id相关联的第一模板及第二模板(s3220)。

通信部1210将由步骤s3220得到的模板向认证客户端1000发送(s3230)。此外,在存在与用户id相关联的属性信息的情况下,在步骤s3220中获取该属性信息,并在步骤s3220中将该属性信息也一并发送至认证客户端1000。

接着,认证客户端1000的通信部1070接收模板(s3020),且生物体信息获取部1020从用户获取第一生物体信息及第二生物体信息(s3030)。步骤s3030中的生物体信息获取处理与步骤s2020的处理相同。

接着,第一特征量提取部1030从第一生物体信息中提取特征量(s3040),并对所提取出的第一特征量实施转换来生成第一模板(s3050)。此外,步骤s3040的处理与步骤s2030相同,但有时步骤s3050的处理与步骤s2040的处理不同。

例如,在使用可撤销生物体认证来生成第一模板的情况下,在步骤s2040中执行登记侧的转换处理,在步骤s3050中执行认证侧的转换处理。另外,例如在步骤s2040中执行了des或aes等加密的情况下,由于在签名时无需在客户端内实施加密,所以在步骤s3050中也可以什么都不进行。

接着,第一模板中间核对部1080将从认证服务器1200接收到的第一模板与由步骤s3040生成的第一模板进行中间核对(s3060)。关于中间核对的详细处理使用图6后述。

第一模板中间核对部1080通过实施步骤s3060而得到第一中间核对结果。第一中间核对结果包括在核对了第一模板时所特定出的核对参数及与各核对参数对应的相似度。核对参数是指在核对模板时用于修正一方模板的参数。用于修正生物体信息获取时(例如图像拍摄时)的位置偏差或旋转角度等的参数是核对参数的一个例子。与核对参数对应的相似度是指进行了该核对参数所示的修正的情况下的、模板之间的相似度。关于第一中间核对结果的详情使用图7后述。

第二模板核对部1090基于由步骤s3060得到的第一中间核对结果来判定是否进行第二核对(s3070)。具体而言,例如第二模板核对部1090在第一中间核对结果包括的全部相似度均低于规定值的情况下判定为不进行第二核对,而在第一中间核对结果中包括该规定值以上的相似度的情况下判定为进行第二核对。

此外,也可以不实施步骤s3070的处理而转移到步骤s3080的处理,但例如在参照第一中间核对结果等能够判定为他人的情况下,通过不进行第二模板核对并设为签名失败,能够迅速输出结果。

第二模板核对部1090在判定为不进行第二核对的情况下(s3070:否),结束生物体签名验证处理。此外,此时第二模板核对部1090可以在输入装置1104上进行表示认证失败的显示,通信部1070也可以将认证失败的意思通知认证服务器1200。

在第二模板核对部1090判定为进行第二核对的情况下(s3070:是),第二特征量提取部1050从由步骤s3030得到的第二生物体信息中提取第二特征量(s3080)。步骤s3080的处理与步骤s2050的处理相同。

第二模板生成部1060通过对由步骤s3080得到的第二特征量实施保护转换来生成第二模板(s3090)。此外,步骤s3090的处理与步骤s2060不同。

例如,在将专利文献1记载的基于矢量之间的范数来确定是认证成功还是认证失败的方式用于第二模板核对的情况下,不允许因坐标、角度等的偏差等而造成的核对参数的误差。因此,第二模板生成部1060需要决定核对参数的允许范围,并使用该允许范围内的全部核对参数来转换第二特征量。

在该情况下,使用许多核对参数将单一的第二特征量转换后的结果分别成为第二模板。例如,在核对参数包括坐标及角度的情况下,关于各核对参数,生成使作为第二特征量的图像按照该核对参数表示的坐标值而平行移动(也就是说,核对参数所包括的坐标值表示平行移动量)、且按照该核对参数的角度而旋转后的图像。针对这些图像的全部分别生成被进行保护转换后的第二模板。

另外,例如在后述的第二模板核对中使用的第二模板为第二特征量的情况下,第二模板生成部1060在步骤s3090中不进行转换。即,第二模板生成部1060将第二特征量本身决定为第二模板。另外,在第二模板核对中使用的第二模板是某保护转换后的数据的情况下,第二模板生成部1060在步骤s3090中执行该转换。

另外,第二模板生成部1060也可以在步骤s3090中基于第一中间核对结果锁定要生成的第二模板。具体而言,例如第二模板生成部1060在步骤s3090的生成第二模板的阶段,不生成与在后述的第二模板核对时不使用的核对参数对应的第二模板。由此,能够实现第二模板的生成时间及第二模板的数据量的减少,还能实现第二模板核对的高速化。

接着,第二模板核对部1090将从认证服务器1200接收到的第二模板与由步骤s3090生成的第二模板进行核对来获取第二核对结果(s3100)。关于第二模板核对的详细处理使用图8后述。

第二模板核对部1090在步骤s3090的核对中利用第一中间核对结果预先锁定有可能一致的核对参数,由此能够实现核对的高速化。

第二模板核对部1090将在步骤s3090中利用核对参数转换后的第二模板中的、成功与预先登记的第二模板核对的第二模板包括在第二核对结果内。另外,第二模板核对部1090也可以将与第二模板对应的私有密钥而并非第二模板本身包括在第二核对结果内。

接着,签名生成部1100获取成为签名对象的明文(s3110)。例如在用户想对某些数据赋予自己的生物体签名来防止篡改并且保证真实性的情况下,签名对象的数据是该明文。另外,在目的是对认证服务器1200表示用户为本人的认证的情况下,从认证服务器1200发送的随机数(以后也称为挑战码(challengecode))是该明文。另外,在不使用挑战码的情况下,签名生成部1100也可以获取认证客户端1000进行计测的时刻,并将该时刻作为明文。

接着,签名生成部1100针对由步骤s3110获取到的明文生成生物体签名(s3120)。签名生成部1100例如可以使用专利文献1所公开的方法生成生物体签名,也可以使用将其它生物体信息用作密钥的任意方法生成生物体签名。签名生成部1100在步骤s3120的处理中根据明文和由步骤s3100得到的第二核对结果生成针对该明文的生物体签名。

接着,通信部1070将由步骤s3110得到的明文及由步骤s3120生成的生物体签名向认证服务器1200发送(s3130)。但是,在本处理的目的是认证、且作为明文而使用从认证服务器1200接收的挑战码的情况下,通信部1070无需发送明文。

接着,认证服务器1200的通信部1210接收在步骤s3130中认证客户端1000所发送的明文及生物体签名(s3240)。接着,签名验证部1240验证由步骤s3240接收到的生物体签名(s3250)。签名验证部1240在生物体签名验证中可以使用专利文献1所公开的方法,也可以实施其它将生物体信息用作密钥的任意生物体签名系统中的签名验证。

在步骤s3250的处理中,签名验证部1240使用明文、生物体签名及由步骤s3220得到的第二模板来验证生物体签名是否有效。但是,在作为明文而使用认证服务器1200所发送的挑战码的情况下,签名验证部1240使用该挑战码、针对该挑战码的生物体签名(在该情况下为响应代码)和第二模板进行验证。

若由步骤s3020接收到的第二模板与由步骤s3090获取到的第二模板之间的误差低于一定水平、且针对明文的签名未被篡改,则由签名验证部1240进行的验证成功。由此,用户的认证或用户对所生成的明文进行的高速的生物体签名验证得以实现。

图6是表示第一模板中间核对处理的一个例子的流程图。第一模板中间核对中的输入是登记侧的第一模板(即由步骤s3020接收的第一模板)和认证侧的第一模板(由步骤s3050生成的第一模板)。第一模板中间核对部1080在第一模板中间核对中核对这两个第一模板并输出第一中间核对结果。以下,参照附图来详细说明。

首先,第一模板中间核对部1080实施第一模板的事前核对(s6010)。该事前核对是在获取步骤s6020及其以后的各个核对参数下的第一模板中间核对结果之前统一进行的处理。

例如,在第一模板核对中作为可撤销生物体认证而应用相关性不变随机过滤的情况下,该处理相当于相关图的生成处理,其中该相关图表示在核对时进行的登记侧的第一模板与认证侧的第一模板之间的在各核对参数下的相关系数。此外,作为该相关系数,例如可以使用登记侧的第一模板与认证侧的第一模板的第一特征量的相关系数、或登记侧的第一模板与认证侧的第一模板的图像的各点处的亮度值的相关系数等。

另外,例如在登记侧的第一模板的生成中实施des或aes等一般加密的情况下,该处理相当于将该加密后的第一模板解密的处理。

接着,第一模板中间核对部1080向第一核对参数代入核对参数的初始值(s6020)。第一模板中间核对部1080例如在将坐标或角度用作核对参数的情况下,通过将坐标或角度的最小值作为初始值代入并使参数的值逐次增加,而能够详尽地实施各核对参数下的核对。

接着,第一模板中间核对部1080获取当前所代入的核对参数下的、登记侧的第一模板与认证侧的第一模板的相似度(s6030)。第一模板中间核对部1080例如在生成了上述相关图的情况下将与该核对参数对应的相关系数获取为相似度。

接着,第一模板中间核对部1080将由最近的步骤s6030得到的相似度与第一中间核对结果所包括的相似度的最大值进行比较,并在由最近的步骤s6030得到的相似度超过该最大值的情况下更新第一模板中间核对结果(s6040)。

此外,若如上述那样仅在相似度超过该最大值的情况下,第一模板中间核对部1080覆盖第一模板中间核对结果,则只得到一个结果。第一模板中间核对部1080也可以将由最近的步骤s6030得到的相似度与规定的阈值而并非该最大值进行比较,并在比阈值大的情况下向第一模板中间核对结果追记信息。在该情况下,能够得到多个结果。

若第一模板的核对精度足够高,则即使通过一个第一模板中间核对结果也能确保精度,但在该核对精度不充分的情况下,有时允许多个第一模板中间核对结果来防止因锁定造成的精度恶化会更好。

此外,也可以是,第一模板中间核对部1080在步骤s6040中更新第一模板中间核对结果的情况下,例如基于预先确定的条件等从认证侧的第一生物体信息推测属性信息,并将所推测出的属性信息包括在第一模板中间核对结果内。

属性信息如前述那样是从生物体信息中得到的用于将用户分类的信息。例如,在作为第一生物体信息而使用面部图像的情况下,第一模板中间核对部1080能够从面部图像推定用户的性别、年龄、人种等属性信息。另外,在作为第一生物体信息而使用指纹的情况下,第一模板中间核对部1080能够将箕型、斗型及弓型等指纹类型利用为属性信息。通过将属性信息利用于候选用户的锁定,可实现核对的进一步高速化。

图7是表示第一模板中间核对结果的一个例子的框图。第一模板中间核对结果9000例如包括核对参数9100、相似度9130及属性信息9200。

在图7的例子中,核对参数9100包括坐标9110及旋转角度9120。也就是说,在步骤s6040的第一中间核对结果更新时,第一模板中间核对部1080将当前的核对参数储存至9100,并将相似度储存至9130。另外,第一模板中间核对部1080也可以将从第一生物体信息推定的属性信息向9200代入。

接着,第一模板中间核对部1080向第一核对参数代入下一个值(s6050),并判定第一核对参数的搜索是否已完成、即是否已将规定范围的第一核对参数的值全部代入(s6060)。若搜索尚未完成(s6060:否),则第一模板中间核对部1080返回步骤s6030继续搜索。若搜索已完成(s6060:是),则第一模板中间核对部1080输出第一模板中间核对结果(s6070),完成第一模板中间核对处理。

通过第一模板中间核对处理,能够得到包括第一模板的相似度变高时的核对参数及属性信息在内的第一模板中间核对结果。第二模板核对部1090将第一模板中间核对结果利用于第二模板核对来锁定第二模板的核对候选,由此能够实现核对的高速化。

图8是表示第二模板核对处理的一个例子的流程图。第二模板核对部1090将登记侧的第二模板(由步骤s3020接收到的第二模板)与认证侧的第二模板(由步骤s3090生成的第二模板)进行核对,并将核对结果(一致或不一致)和第二模板或从第二模板中提取的私有密钥输出。以下,参照附图来说明详情。

首先,第二模板核对部1090获取由步骤s6070得到的第一模板中间核对结果(s7010)。接着,第二模板核对部1090基于由步骤s7010得到的第一模板中间核对结果来生成第二核对参数集(s7020)。

如图7所示,第一模板中间核对结果9000包括第一模板的相似度高时的核对参数9100。由于第一模板和第二模板是将从用户的同一部位获取到的生物体信息进行转换而得到的,所以因核对时的坐标、旋转角度等生物体的偏差而产生的核对参数是共通的。

即,在采用了正确的核对参数的情况下,可以认为第一模板的相似度和第二模板的相似度都变高。第二模板核对部1090在步骤s7010的处理中利用该性质将在第二模板核对时要搜索的核对参数限定于第一模板中间核对结果所包括的核对参数及其附近参数。

例如,若第一模板的核对参数为坐标(10,10)、旋转角度(5度),则第二模板核对部1090在第二模板核对时搜索坐标(10±α,10±α)、旋转角度(5±β度)的范围内的核对参数。其中,α(0≤α)是针对坐标预先确定的允许误差,β(0≤β)是针对旋转角度预先确定的允许误差。允许误差以第二模板核对中的搜索范围包含在第一参数中间核对中的搜索范围内的方式确定。

第二模板核对部1090例如将该允许范围内的核对参数的组合生成为第二核对参数集。另外,在第一模板中间核对结果中包括多个核对参数的情况下,第二模板核对部1090针对全部核对参数求出附近的范围,并将全部核对参数与全部附近范围的并集生成为第二核对参数集。

在以往的生物体签名方式中,需要将由被允许的全部核对参数构成的集合用作第二核对参数集。因此,在以往的生物体签名方式中,第二核对参数集包括数量庞大的核对参数。但在本实施例中,第二模板核对部1090通过将第二核对参数集所包括的核对参数限定于第一模板的核对参数的附近,抑制了参数数量并实现了核对处理的高速化。

接着,第二模板核对部1090向第二核对参数代入初始值(s7030)。由于在步骤s7020中第二核对参数可取的全部组合储存于第二核对参数集,所以第二模板核对部1090例如将第二核对参数集最初储存的核对参数用作初始值。

接着,第二模板核对部1090选择与由步骤s7030代入的第二核对参数对应的第二模板(s7040)。接着,第二模板核对部1090将由步骤s7040选择的第二模板与登记侧的第二模板进行核对,并判定两者是否一致(s7050)。第二模板核对部1090例如使用专利文献1所公开的生物体签名的验证方法来执行步骤s7050的处理。

第二模板核对部1090在步骤s7050中判定为第二模板一致的情况下,将由该步骤s7050选择的第二模板或从该第二模板中提取的私有密钥包括在第二核对结果内(s7060)。私有密钥是仅在第二模板的核对成功时能够提取的信息。使用该私有密钥生成的签名能够使用储存于模板储存数据库1290内的第二模板来验证。

此外,第二模板核对部1090在步骤s7050中判定为第二模板并不一致的情况下,不在步骤s7060中更新第二核对结果,而是转移到后述的步骤s7070。另外,也可以是,第二模板核对部1090在步骤s7050中判定为第二模板一致的情况下,如上述那样在步骤s7060中更新了第二核对结果之后转移到后述的步骤s7090。

接着,第二模板核对部1090向第二核对参数代入下一个值(s7070)。接着,第二模板核对部1090判定第二核对参数是否已将第二核对参数集所包括的核对参数全部搜索完、即是否已将第二核对参数集所包括的值全部代入(s7080)。第二模板核对部1090在已将核对参数全部搜索完的情况下(s7080:是),输出此时的第二核对结果(s7090),完成第二模板核对处理。第二模板核对部1090在尚未将核对参数搜索完的情况下(s7080:否),返回步骤s7040继续搜索。

第二模板核对部1090通过第二模板核对处理,作为第二核对结果而得到第二模板或从第二模板中提取的私有密钥。此外,在第二模板核对部1090于第二模板的核对失败的情况(在全部核对参数下认证侧的第二模板与登记侧的第二模板都不一致的情况)下,由于无法将第二模板及私有密钥获取为第二核对结果,所以中止步骤s3110及其以后的生物体签名处理,并设为认证失败。

在上述图5的例子中,认证客户端1000进行生物体签名的验证,并在使用能够验证的密钥生成了签名之后将其向认证服务器1200发送。相对于此,也可以是,认证客户端1000完全不从认证服务器1200获取信息而是离线生成生物体签名。在该情况下,变成在认证服务器1200侧进行生物体签名的验证。

图9是表示认证服务器1200进行1∶1型生物体签名验证的情况下的生物体签名处理的一个例子的流程图。对与图5的不同点进行说明。为了实现图5的处理,认证服务器1200包括第一模板生成部及第二模板核对部。

在步骤s3090中,由于签名生成部1100无法进行使用第一模板的中间核对结果的锁定,所以不进行锁定而是使用与被允许的全部核对参数对应的第二模板来生成生物体签名。

通信部1070将由步骤s3010得到的用户id、由步骤s3050得到的第一模板、由步骤s3070得到的第二模板、由步骤s3080得到的明文及由步骤s3090得到的生物体签名向认证服务器1200发送(s4010)。

认证服务器1200的通信部1210接收用户id、第一模板、第二模板、明文及生物体签名(s4210)。接着,模板获取部1230从模板储存数据库1290获取与所接收到的用户id相关联的登记侧模板(s4220)。

步骤s4230~s4250的处理由于与图5中的认证客户端1000执行的同名处理相同,所以省略说明。此外,在图9的例子中,认证服务器1200执行这些处理。在步骤s4250之后,签名验证部1240执行步骤s3250的签名验证处理。

实施例2

本实施例的生物体签名系统实施用户不输入id的1∶n型生物体签名。在本实施例的生物体签名系统中,也能通过将第一生物体信息有效利用于中间核对、并将第二生物体信息有效利用于生物体签名来高速地进行认证和签名验证。以下,对与实施例1的不同点进行说明。

图10是表示1∶n型生物体签名验证处理的一个例子的流程图。对与图5的不同点进行说明。在1∶n型生物体签名中,由于不输入认证对象的用户id,所以图10的处理从步骤s3030开始,之后执行步骤s3040、步骤s3050。

接着,通信部1070将由步骤s3050生成的第一模板向认证服务器1200发送(s5010)。认证服务器1200的通信部1210接收第一模板(s5210)。设为在模板储存数据库1290内储存有n件第一模板。第一模板中间核对部1220将由步骤s5210接收到的第一模板与储存于模板储存数据库1290内的全部(即n件)第一模板分别进行中间核对(s5220~s5250)。

接着,第一模板中间核对部1220根据由步骤s5230得到的第一模板中间核对结果9000创建候选用户集(s5260)。此外,例如第一模板中间核对部1220仅将第一模板中间核对结果中的相似度为规定值以上的用户信息包括在候选用户集内。另外,在步骤s3030中与生物体信息一起输入了属性信息的情况下,第一模板中间核对部1220也可以从认证侧的第一生物体信息推测属性信息,且不将所推测出的属性信息与所输入的属性信息不一致的用户信息包括在候选用户集内。候选用户集的数据结构例参照图11后述。

接着,通信部1210将由步骤s5260得到的候选用户集向认证客户端1000发送(s5270)。认证客户端1000的通信部1070从认证服务器1200接收候选用户集(s5020)。第二模板核对部1090仅针对候选用户集所包括的各用户(设为候选用户集所包括的用户数为m件),使用与该用户对应的核对参数来实施第二模板核对(s5030~s5060)。

以往的1∶n型生物体签名系统需要在认证客户端或认证服务器中针对全部n件(即已登记的全部)第二模板进行签名验证。生物体签名的验证处理是与第一模板的中间核对相比计算量较多的处理。1∶n型由于与1∶1型相比较会产生n倍的验证处理,所以签名验证所需要的时间非常长。

相对于此,本实施方式的生物体签名系统通过认证服务器1200进行第一模板的中间核对,锁定作为第二模板核对的对象的用户及核对参数,由此能够使认证和签名验证高速化。此外,例如也可以由认证客户端1000进行第一模板的中间核对,另外,也可以由认证服务器1200进行第二模板的核对。

图11是表示候选用户集的数据结构的一个例子的说明图。候选用户集9500包括一个以上的候选用户记录9600。候选用户记录9600储存与被判定为应进行第二模板的核对的候选用户有关的信息。具体而言,候选用户记录9600例如包括用户id9610、第一模板中间核对结果9620、第二模板9630。

用户id9110储存候选用户的用户id。第一模板中间核对结果9620是通过步骤s5230的第一模板中间核对得到的结果,例如具有与图7所示的第一模板中间核对结果9000同样的结构。第二模板9630是由步骤s3090生成的数据。

认证服务器1200将具有上述数据结构的候选用户集9500向认证客户端1000发送,认证客户端1000对候选用户集9500所包括的用户进行第二模板的核对,由此能够实现高速的签名生成及签名验证。

此外,本发明并不限定于上述实施例,而是包括各种各样的变形例。例如,上述实施例为了易于理解地说明本发明而进行了详细说明,并不一定限定于具备所说明的全部结构。另外,也可以将某实施例的一部分结构置换成其它实施例的结构,另外,还可以在某实施例的结构中添加其它实施例的结构。另外,对于各实施例的一部分结构,能够进行其它结构的追加、删除、置换。

另外,上述各结构、功能、处理部、处理手段等也可以通过将它们的一部分或全部例如设计在集成电路上等而由硬件实现。另外,上述各结构、功能等也可以通过由处理器解释并执行实现各自功能的程序而由软件实现。实现各功能的程序、表格、文件等信息能够置于存储器、硬盘、ssd(solidstatedrive:固态驱动器)等记录装置或ic卡、sd卡、dvd等记录介质。

另外,关于控制线和信息线,示出了在说明上被认为必需的控制线和信息线,而在产品上并不一定示出了全部的控制线和信息线。实际上,也可以认为几乎全部结构都相互连接。

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