基于带误差学习假设和随机预言的实用可重用模糊提取器的制作方法

文档序号:19735653发布日期:2020-01-18 04:25阅读:372来源:国知局
基于带误差学习假设和随机预言的实用可重用模糊提取器的制作方法

政府许可权

本发明是在美国政府合同号2016-16081000009的政府支持下完成的。政府在本发明中具有特定权利。

相关申请的交叉引用

这是2017年7月17日在美国提交的题为“practicalreusablefuzzyextractorbasedonthelearning-with-errorassumptionandrandomoracle”的美国临时申请no.62/533,548的非临时专利申请,该临时申请的全部内容通过引用并入于此。

这也是2017年7月17日在美国提交的题为“reusablefuzzyextractorbasedonthelearning-with-errorassumptionsecureagainstquantumattacks”的美国临时申请no.62/533,572的非临时专利申请,该临时申请的全部内容通过引用并入于此。

发明的背景

本发明涉及可重用模糊提取器(rfe)密码系统,更具体地,涉及可以利用简单高效的操作来实现的rfe密码系统。



背景技术:

模糊提取器(fe)将生物特征数据转换为随机字符串,这使得将密码技术应用于生物特征安全性成为可能。模糊提取器将重复的秘密的有噪声读数转换为相同的均匀分布密钥。为了消除噪声,初始登记阶段采集秘密的第一个有噪声读数,并产生要用于后续的读数的非秘密的辅助字符串。即使利用同一秘密的有噪声版本重复了若干次该初始登记阶段从而产生多个辅助字符串,可重用模糊提取器(rfe)仍然保持安全(参见并入参考文献列表,参考文献no.3)。

现有的rfe系统不适用于实际应用。例如,参考文献no.2中描述的可重用模糊提取器提供了较弱的安全性。参考文献no.1和no.3都描述了可重用模糊提取器,因为它们依赖于非常昂贵的密码工具,例如数字锁(参见参考文献no.3)或多线性分级编码(参见参考文献no.1),从而产生非常大的公共字符串(大于50~100兆字节(mb))并且gen和rep算法的运行时间变慢,所以是不切实际的。另外,现有技术中的先前结果依赖于昂贵的密码工具的存在。

因此,持续需要一种可以利用简单而有效的操作来实现并且可以在实际应用中部署的rfe。



技术实现要素:

本发明涉及可重用模糊提取器(rfe)密码系统,更具体地,涉及可以利用简单高效的操作来实现的rfe密码系统。该系统包括一个或更多个处理器以及编码有可执行指令的非暂时性计算机可读介质,使得当执行所述可执行指令时,所述一个或更多个处理器执行多个操作。该系统使用可重用模糊提取器处理将生物特征数据转换为密码密钥r',该用可重用模糊提取器处理具有对随机预言模型进行建模的基础哈希函数(nderlyinghashfunction)。当r'与先前计算的密码密钥r的比较显示匹配时,系统允许访问安全服务。

在另一方面,可重用模糊提取器处理包括生成处理和重建处理,其中,生成处理将公共参数和第一生物特征输入作为输入,并输出公共辅助字符串和第一随机字符串,并且其中,重建处理将公共辅助字符串和第二生物特征输入作为输入并输出第二随机字符串。

在另一方面,当第一生物特征输入与第二生物特征输入足够相似时,第一随机字符串被认为等同于第二随机字符串,并且第二随机字符串被用于验证对安全数据的访问。

在另一方面,基于带误差学习(lwe)问题的计算困难度假设(computationalhardnessassumption)和基础哈希函数的安全性来保证可重用模糊提取器处理的安全性。

在另一方面,生物特征数据是指纹,并且通过服务器访问安全数据。

在另一方面,生物特征数据是指纹,并且通过服务器访问安全数据,并且其中,该系统启用用户与服务器之间的电子通信。用户与服务器之间的电子通信包括以下内容:用户在服务器处登记第一指纹;服务器执行生成处理,以获得公共辅助字符串和第一随机字符串;服务器使用第一随机字符串作为对称加密方案的密码密钥对消息进行加密,从而得到密文;服务器存储公共辅助字符串;服务器擦除第一随机字符串;服务器通过处理第二指纹并执行重建以获得第二随机字符串来认证用户,其中,如果第一指纹与第二指纹足够相似,则认为第一随机字符串等同于第二随机字符串;并且服务器使用第二随机字符串对密文进行解密以获得消息,以验证试图访问服务器的用户。

在另一方面,该系统还包括用于获得生物特征数据的指纹扫描仪。

在另一方面,该系统还包括用于获得生物特征数据的眼睛扫描仪。

最后,本发明还包括计算机程序产品和计算机实现的方法。所述计算机程序产品包括存储在非暂时性计算机可读介质上的计算机可读指令,所述计算机可读指令能够由具有一个或更多个处理器的计算机执行,使得在执行所述指令时,所述一个或更多个处理器执行本文列出的操作。另选地,所述计算机实现的方法包括使计算机执行这种指令并且执行所得操作的动作。

附图说明

根据下面结合参照附图对本发明各个方面的详细描述,本发明的目的、特征以及优点将显而易见,附图中:

图1是描绘根据本公开的一些实施方式的可重用模糊提取器(rfe)密码系统的组件的框图;

图2是根据本公开的一些实施方式的计算机程序产品的例示图;

图3是根据现有技术的基于rfe的注册处理的例示图;

图4是根据现有技术的基于rfe的识别处理的例示图;

图5是根据本公开的一些实施方式的算法genh的例示图;

图6是根据本公开的一些实施方式的算法rech的例示图;以及

图7是例示根据本公开的一些实施方式的rfe密码系统的流程图。

具体实施方式

本发明涉及可重用模糊提取器(rfe)密码系统,更具体地,涉及可以利用简单高效的操作来实现的rfe密码系统。呈现以下描述以使本领域普通技术人员能够制造和使用本发明并将其并入特定应用的背景中。各种变型例以及不同应用方面的多种用途对于本领域技术人员来说是显而易见的,并且本文限定的一般原理可以被应用于广泛的方面。因此,本发明不旨在限于所呈现的方面,而是符合与本文所公开原理和新颖特征相一致的最广范围。

在下面的详细描述中,阐述了许多具体细节,以便提供对本发明的更透彻理解。然而,本领域技术人员应当明白,本发明可以在不必受限于这些具体细节的情况下来实践。在其它情况下,公知结构和装置按框图形式而不是按细节示出,以便避免模糊本发明。

将读者的注意引向与本说明书同时提交的所有文件和文档,这些文件和文档与本说明书一起开放以供公众查阅,所有这些文件和文档的内容通过引用并入于此。本说明书中公开的所有特征(包括任何所附权利要求、摘要以及附图)可以由用于相同、等同或相似目的的另选特征来代替,除非另有明确说明。因此,除非另有明确说明,所公开的每个特征仅仅是一系列的等同或相似特征中的一个例子。

而且,权利要求中没有明确陈述“用于执行指定功能的装置”或“用于执行特定功能的步骤”的任何要素不应被解释为如在35u.s.c.112节第6款中指定的“装置”或“步骤”条款。特别地,在本文的权利要求中使用“……的步骤”或“……的动作”不旨在援引35u.s.c.112节第6款的规定。

在详细描述本发明之前,首先提供了引用参考文献的列表。接下来,提供了对本发明各个主要方面的描述。最后,提供本发明各个实施方式的具体细节,以给出对具体方面的理解。

(1)并入参考文献的列表

贯穿本申请引用和并入以下参考文献。为了清楚和方便起见,这些参考文献在此被列为读者的中心资源。下列参考文献通过引用并入于此,就像在此完全陈述的一样。这些参考文献通过参照如下对应文献参考号而在本申请中加以引用:

1.charlesherderandbenjaminfullerandmartenvandijkandsrinivasdevadas,publickeycryptosystemswithnoisysecretkeys,cryptologyeprintarchive,report2017/210,2017。

2.xavierboyen.reusablecryptographicfuzzyextractors.inacmccs’04:11thacmconf.oncomputerandcommunicationssecurity,pages82–91.acmpress,2004。

3.rancanetti,benjaminfuller,omerpaneth,leonidreyzin,andadamd.smith.reusablefuzzyextractorsforlow-entropydistributions.inadvancesincryptology—eurocrypt2016,parti,volume9665oflncs,pages117–146.springer,2016。

4.odedregev.onlattices,learningwitherrors,randomlinearcodes,andcryptography.inharoldn.gabowandronaldfagin,editors,37thannualacmsymposiumontheoryofcomputing(stoc),pages84–93.acmpress,may2005。

5.mihirbellareandphilliprogaway.1993.randomoraclesarepractical:aparadigmfordesigningefficientprotocols.inproceedingsofthe1stacmconferenceoncomputerandcommunicationssecurity(ccs'93).acm,newyork,ny,usa,62-73。

6.benjaminfuller,xianruimeng,andleonidreyzin.computationalfuzzyextractors.inadvancesincryptology—asiacrypt2013,parti,volume8269oflncs,pages174–193.springer,2013。

(2)主要方面

本发明的各种实施方式包括三个“主要”方面。第一个是可重用模糊提取器(rfe)密码系统。该系统通常采用计算机系统操作软件的形式或采用“硬编码”指令集的形式。该系统可以并入提供不同功能的各种各样的装置中。第二个主要方面是利用数据处理系统(计算机)进行操作的通常采用软件形式的方法。第三个主要方面是计算机程序产品。计算机程序产品通常表示存储在诸如光存储装置(例如,光盘(cd)或数字通用盘(dvd))或磁存储装置(例如,软盘或磁带)的非暂时性计算机可读介质上的计算机可读指令。计算机可读介质的其它非限制示例包括:硬盘、只读存储器(rom)以及闪存型存储器。这些方面将在下面进行更详细描述。

图1中提供了示出本发明的系统(即,计算机系统100)的示例的框图。计算机系统100被配置成执行与程序或算法相关联的计算、处理、操作和/或功能。在一个方面,本文讨论的某些处理和步骤被实现为存在于计算机可读存储器单元内并由计算机系统100的一个或更多个处理器执行的一系列指令(例如,软件程序)。在执行时,所述指令使计算机系统100执行特定动作并展现特定行为,如本文所描述的。

计算机系统100可以包括被配置成传送信息的地址/数据总线102。另外,一个或更多个数据处理单元(如处理器104(或多个处理器))与地址/数据总线102联接。处理器104被配置成处理信息和指令。在一方面,处理器104是微处理器。另选地,处理器104可以是不同类型的处理器,例如并行处理器、专用集成电路(asic)、可编程逻辑阵列(pla)、复杂可编程逻辑器件(cpld)或现场可编程门阵列(fpga)。

计算机系统100被配置成利用一个或更多个数据存储单元。计算机系统100可以包括与地址/数据总线102联接的易失性存储器单元106(例如,随机存取存储器(“ram”)、静态ram、动态ram等),其中,易失性存储器单元106被配置成存储用于处理器104的信息和指令。计算机系统100还可以包括与地址/数据总线102联接的非易失性存储器单元108(例如,只读存储器(“rom”)、可编程rom(“prom”)、可擦除可编程rom(“eprom”)、电可擦除可编程rom(“eeprom”)、闪存等),其中,非易失性存储器单元108被配置成存储用于处理器104的静态信息和指令。另选地,计算机系统100可以执行从诸如“云”计算中的在线数据存储单元取得的指令。在一方面,计算机系统100还可以包括与地址/数据总线102联接的一个或更多个接口,如接口110。所述一个或更多个接口被配置成使得计算机系统100能够与其它电子装置和计算机系统连接。由所述一个或更多个接口实现的通信接口可以包括有线(例如,串行电缆、调制解调器、网络适配器等)和/或无线(例如,无线调制解调器、无线网络适配器等)通信技术。

在一个方面,计算机系统100可以包括与地址/数据总线102联接的输入装置112,其中,输入装置112被配置成将信息和命令选择传送至处理器100。根据一个方面,输入装置112是字母数字输入装置(如键盘),其可以包括字母数字键和/或功能键。另选地,输入装置112可以是除字母数字输入装置之外的其它输入装置。在一方面,计算机系统100可以包括与地址/数据总线102联接的光标控制装置114,其中,光标控制装置114被配置成将用户输入信息和/或命令选择传送至处理器100。在一方面,光标控制装置114是利用诸如鼠标、轨迹球、轨迹板、光学跟踪装置或触摸屏的装置来实现的。尽管如此,但在一方面,例如响应于使用与输入装置112相关联的特殊键和键序列命令,光标控制装置114经由来自输入装置112的输入而被引导和/或启用。在另一方面中,光标控制装置114被配置成通过语音命令指引或引导。

在一方面,计算机系统100还可以包括与地址/数据总线102联接的一个或更多个可选的计算机可用数据存储装置,诸如,存储装置116。存储装置116被配置成存储信息和/或计算机可执行指令。在一个方面,存储装置116是诸如磁或光盘驱动器(例如,硬盘驱动器(“hdd”)、软盘、光盘只读存储器(“cd-rom”)、数字通用盘(“dvd”))的存储装置。依据一个方面,显示装置118与地址/数据总线102联接,其中,显示装置118被配置成显示视频和/或图形。在一方面,显示装置118可以包括:阴极射线管(“crt”)、液晶显示器(“lcd”)、场发射显示器(“fed”)、等离子体显示器,或适于显示视频和/或图形图像以及用户可识别的字母数字字符的任何其它显示装置。

本文所呈现的计算机系统100是根据一个方面的示例计算环境。然而,计算机系统100的非限制示例并不严格限于作为计算机系统。例如,一个方面规定了计算机系统100代表可以根据本文所述各个方面使用的一类数据处理分析。此外,还可以实现其它计算系统。实际上,本技术的精神和范围不限于任何单一数据处理环境。因此,在一方面中,使用通过计算机执行的计算机可执行指令(例如,程序模块)来控制或实现本技术的各个方面的一个或更多个操作。在一个实现方式中,这样的程序模块包括被配置成执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件和/或数据结构。另外,一个方面提供了通过利用一个或更多个分布式计算环境来实现本技术的一个或更多个方面,例如,在该计算环境中,任务由通过通信网络链接的远程处理装置执行,或者例如,在该计算环境中,各种程序模块位于包括存储器-存储装置的本地和远程计算机存储介质中。

图2中描绘了具体实施本发明的计算机程序产品(即,存储装置)的例示图。该计算机程序产品被描绘为软盘200或诸如cd或dvd的光盘202。然而,如先前提到的,该计算机程序产品通常代表存储在任何兼容的非暂时性计算机可读介质上的计算机可读指令。如关于本发明所使用的术语“指令”通常指示要在计算机上执行的一组操作,并且可以表示整个程序的片段或单个分离的软件模块。“指令”的非限制示例包括计算机程序代码(源或目标代码)和“硬编码”电子装置(即,编码到计算机芯片中的计算机操作)。“指令”被存储在任何非暂时性计算机可读介质上,例如存储在计算机的存储器中或软盘、cd-rom以及闪存驱动器上。无论如何,这些指令被编码在非暂时性计算机可读介质上。

(3)各个实施方式的具体细节

描述了一种用于随机预言模型中的可重用模糊提取器(rfe)的系统(有关随机预言模型的描述,参见参考文献no.5)。rfe是一种具有一对算法(gen,rec)的密码系统,使得gen(生成算法)将生物特征m作为输入并输出一对两个字符串(p,r),其中p是公共辅助字符串,而r是随机字符串。rec(重建算法)将两个字符串(公共字符串p和生物特征读数m')作为输入,并输出随机字符串r',使得当且仅当m'足够接近原始m时,r=r'。rfe的可重用性保证了随机字符串r'或m的信息不会被全部针对同一生物特征m独立计算的多个公共字符串p'所揭示。

本文所述的发明是一种独特且实用的rfe系统,其依赖于在随机预言模型中被称为决策性带误差学习(lwe)假设(关于lwe假设的描述,参见参考文献no.4)的计算困难度假设。本发明的一个优点是,与在运行时间和公共字符串的大小方面非常低效的先前的rfe相比,该rfe系统在实际应用中是实用且可部署的。

(3.1)可重用模糊提取器及其在识别系统中的应用

可重用模糊提取器包括两种算法(gen,rec)。gen和rec分别代表生成算法和重建算法。这两种算法的语法描述如下。gen将生物特征w作为输入并输出一对字符串(p,r),其中p是公共辅助字符串,而r是私有提取的随机数(randomness)。算法rec将两个字符串p和w'作为输入,其中p是公共辅助字符串,w'是查询生物特征。然后,rec输出随机字符串r'。rec的模糊正确性保证了:如果用于创建p的生物特征w与查询生物特征w'接近,则其保持r=r'。可重用的安全性保证了可以多次使用有噪声的生物特征来生成多个公共辅助字符串,而不会泄漏任何生物特征信息。

使用此系统,可以构建简单的基于生物特征的识别系统。图3和图4示出了根据现有技术的典型识别系统的示例,其中,图3例示了注册处理,而图4例示了识别处理。考虑两方,alice(客户端)300和bob(服务器)302。alice300希望通过使用她的生物特征信息w304(例如指纹)向bob302登记(要素306)以进行一些安全数据存储服务b。在初始注册阶段(图3),alice300可以使用由bob302提供的指纹扫描仪以获得w(要素304)并将其发送给bob(要素306)。然后,bob302简单地运行gen(w)(要素310)以获得由公共辅助字符串p和随机字符串r组成的一对字符串(要素312)。现在,bob302使用任何私钥加密方案在密钥r下对消息“alice||serviceb”进行加密,所生成的密文为c(要素314)。然后,bob从系统中擦除w和r,仅存储p和c(要素316)。现在,生物特征模板w被视为已注册(要素318)。

请注意,在给定p和c的情况下,与alice300或她的生物特征数据(要素304)有关的信息不会被透露给敌对的第三方,即使其完全闯入bob的服务器302中。如图4所示,每当alice300想要访问她的bob302的云存储时,她扫描生物特征w'(要素400)并将其发送给bob(要素402)。现在,bob302可以执行rec(p,w')(要素404),其输出在初始注册时(图3)创建的原始随机字符串r(要素406)。然后,bob302可以通过使用r作为其解密密钥来解密c,以获得消息“alice||serviceb”(要素408),以查明请求者确实是alice,并向alice授予对云服务b的访问权限(即,访问授权410)。

如本领域的技术人员可以理解的,该系统可以包括用于获得生物特征数据的指纹扫描仪或眼睛扫描仪(例如,虹膜扫描仪、视网膜扫描仪)。指纹扫描仪是使用指纹进行生物特征认证以验证和认证身份的硬件。虹膜扫描生物特征技术测量眼睛的彩色圆圈(coloredcircle)中的独特图案,以验证和认证身份。基于虹膜的识别需要使用特定的硬件,诸如,虹膜扫描仪。视网膜扫描仪使用人的视网膜血管上的独特图案进行认证。

(3.2)设置和基础算法

以下是根据本公开的实施方式的基于lwe假设的随机预言模型中的可重用模糊提取器(rfe)的描述。使用标准数学概念。[1,m]表示从1到m的所有整数的集合。粗体大写字母(例如,a)表示某个字段(field)上的矩阵,粗体小写字母(例如,b)表示某个长度的向量。a-1表示矩阵a的逆。

fuller等人提出的用于有噪声的随机线性码系统的解码算法(参见参考文献no.6)被用作根据本公开的实施方式的系统中的子例程。在下面的描述中,a是m×n矩阵,其元素是从字段中随机采样的,其中m≥3n且t=o(logn)表示最大误差数,q代表质数。至关重要的是,假定a是跨多个生物特征登记处理全局可用的通用参数,使得将随机的单个a指定给特定的个人。向量b是长度为m的向量。向量e是m维的误差向量,使得最多t个坐标为非零。下面描述了fuller等人描述的解码算法。

–s′←decodet(a,b):

1.选择2n个随机行而不替换i1,…,i2n←[1,m]。

2.将a,b限制为行i1,…,i2n;用表示。

3.找出的n个线性独立的行。如果不存在这样的行,则输出⊥并停止。

4.进一步将限制到这些n行;用a′,b′表示结果。

5.计算s′=(a′)-1b′。

6.如果b-as′具有多于t个非零坐标,则从步骤(1)重新开始。

7.输出s′。

(3.2.1)解码算法decode

算法decodet(a,b)以中的矩阵a和长度为m的向量b作为输入,并找到长度为n的向量s,该向量s对于长度为m的一些误差向量e和e'满足b=as+e–e',其中,e–e'最多具有t=o(logn)个非零坐标。

步骤1.在1到m之间随机选择一组2n个索引

步骤2.收集与步骤1中选择的索引相对应的输入矩阵a和向量b的行和坐标,以形成2n×n矩阵和长度为2n的向量。

步骤3.在步骤2中形成的2n×n矩阵中找到n个线性独立的行。步骤3的输出是n×n的满秩矩阵。在此步骤中输出这样的满秩矩阵,除了概率至少为1-(1/2)n

步骤4.将该满秩矩阵设定为a',并根据与a'的行相同的索引,将b'设定为来自步骤2中长度为2n的向量的向量。

步骤5.计算s'=(a')-1b'。请注意,a'是满秩的,因此可逆。

步骤6.计算b–as',其中b和a作为输入给定,s'是步骤5的输出。如果b=as+e–e'并且e–e'最多具有t个非零坐标(换句话说,e和e'足够接近),将导致在解码算法的步骤7中输出s′。

(3.3)可重用模糊提取器算法

给定以上对解码算法的描述,以下是根据本公开实施方式的rfe的描述。在下文中,h表示对随机预言进行建模的哈希函数。使用用于预言算法的标准符号fg,其中算法f具有对算法g的预言访问,这意味着f可以以黑盒方式使用g(即,f不需要知道在g中执行的计算的详细信息)。在下文中,pp表示通用参数。在这种情况下,pp是从字段(其中m≥3n)随机均匀采样的m×n矩阵a。同样,设置t=o(logn)。参见以下关于根据本公开的实施方式的可重用模糊提取器rfe的描述,其由以下描述的两种算法(genh,rech)组成。

(3.3.1)生成算法genh

由genh表示的具有随机预言h的算法genh(称为“生成”算法)的输入将公共参数pp和长度为m的向量w作为输入,其中,w是基于生物特征读数生成的。算法genh的输出是公共辅助字符串p和提取的随机字符串r。

步骤1.对随机的长度为n的秘密向量s进行采样。将来,这是提取最终随机数r的种子。

步骤2.从公共参数pp获得m×n矩阵a并计算公共辅助字符串p=as+w。

步骤3.通过对s应用随机预言h来提取随机数r。

步骤4.输出(p,r)

-(p,r)←genh(pp,w):

1.均匀地采样

2.将pp解析为a;令p=as+w。

3.令r=h(s)。

4.输出(p,r)。

-r′←rech(pp,w′,p):

1.将p解析为c;令b=c-w′。

2.将pp解析为a;计算s′=decodet(a,b)。

3.输出r′=h(s′)。

(3.3.2)重建算法rech

由rech表示的具有随机预言h的算法rech(称为“重建”算法)的输入以公共参数pp、长度为m的向量w'(其,中w'是基于生物特征读数生成的)以及包含长度为m的向量的公共辅助字符串p作为输入。算法rech的输出是提取的随机数r。

步骤1.从输入的公共辅助字符串p获得长度为m的向量c,并计算b=c–w'。

步骤2.从输入的公共参数pp获得m×n矩阵a,并通过执行decodet(a,b)获得长度为n的向量s'。

步骤3.输出提取的随机数r'=h(s')。

图5是算法genh的图示说明。如上所述,将生物特征模板304输入到具有随机预言h(要素500)的genh算法(要素510)。随机的长度为n的秘密向量s是提取最终随机数r(要素406)的随机数种子s(要素502)。另外,genh算法(要素310)以公共参数pp作为输入以获得m×n矩阵a(即,公共通用参数a504)。算法genh(要素310)的输出是公共辅助字符串p(要素506)和提取的随机数r(要素406)。生物特征模板304(生物特征数据)是从生物特征扫描仪硬件508(例如,指纹扫描仪或者诸如虹膜或视网膜扫描仪的眼睛扫描仪)获得的。

图6是重建算法rech(要素610)的图示说明。重建算法rech(要素610)的输入是包含长度为m的向量的公共辅助字符串pub(要素506)、长度为m的向量w',其中w'是基于生物特征模板(要素400)生成的。算法rech(要素610)的输出是提取的随机数r(要素406)。从输入的公共参数pp(要素509)获得m×n矩阵a(要素504),并且通过执行decodet(a,b)(要素600)获得长度为n的向量s'。输出是提取的随机数r'=h(s')(要素406)。

(3.4)预估性能

首先,公共辅助字符串的大小取决于基础代数字段的阶(order)。如果阶为q并且生物特征信息的在字段元素的数量方面的长度为m,则公共辅助字符串的大小是位数(logq)*m,其中q是n的多项式。genh算法仅需要zq中的n维向量的m次向量乘法(例如,m*n次字段元素乘法)和向量加法,连同单次执行对随机预言h进行实例化的哈希函数。rech算法的运行时间由可重用模糊提取器算法的步骤2中的解码计算主导,该计算的运行时间进而由解码算法的步骤6中的矩阵向量乘法(例如,m*n次字段元素乘法)主导。

(3.5)可重用模糊提取器(genh,rech)的安全性

基于带误差学习(lwe)问题的困难度以及基础哈希函数h的安全性,保证了根据本公开的实施方式的模糊提取器的可重用的安全性。可重用的安全性意味着:即使向敌对者给出了基于单个生物特征的(可能有噪声的)生物特征读数生成的多个公共辅助字符串,该敌对者也无法获得任何有关原始生物特征或据推测通过原始生物特征提取的随机数的信息,这是对现有技术的改进。许多其他模糊提取器产品不能提供可重用的安全性,因此,如果向敌对者给出了多于一个公共辅助字符串,则该敌对者可以提取有关原始生物特征以及提取的随机数的重要信息。

lwe问题被认为是难题,即使是量子敌对者,因为到目前为止尚未提出有效的量子算法。量子敌对者代表可以访问量子计算机的敌对者。迄今为止,解决归结为lwe问题的格子问题的最著名算法是其维度上严格的指数时间算法。同样,哈希函数(例如,sha-256)也被认为对量子算法是安全的。因此,假设lwe问题的困难度和针对量子计算机的基础哈希函数的安全性,本文所述的模糊提取器提供了针对量子敌对者的可重用的安全性。本文描述的rfe依赖于lwe问题,其可以通过简单而有效的操作(例如,矩阵和向量乘法)来实现。所有先前的结果均依赖于非常昂贵的密码工具的存在;因此,该系统在成本和效率上都提供了改进。

本文所述的发明可用作基于生物特征的识别或认证系统(或其他类型的基于生物特征的系统,例如密钥交换系统),或者其他可以利用有噪声的生物特征信息作为密码密钥的密码系统的子系统。例如,可以如下构建用户alice和服务器bob使用的基于生物特征的识别系统。当alice想在服务器bob处用她的指纹m登记时,服务器bob运行genh(m)并获得pub和r。然后,bob使用r作为对称加密方案的密码密钥,对消息“alice||correct”进行加密。bob仅存储pub和生成的密文c,并从系统中擦除r。随后,alice可能要访问服务器bob的数据库。然后,bob可以在其读取alice的指纹m'并运行rech(pub,m')以获得r'时对alice的证书进行认证。请注意,m'可能是原始指纹m的有噪声的版本,但是两个读数足够接近(即,足够相似),使得r'=r。最后,bob通过使用r'来对c进行解密以获得消息“alice||correct”,以验证试图访问数据库的人确实是alice。

基于使用的域/应用的预定的相似性度量被用于确定m'与m之间是否具有相似性。相似性度量与认证安全级别直接相关,认证安全级别可能取决于应用域。例如,如果两个生物特征输入相同,则将实现高安全性。另选地,本文描述的系统的另一用户可能需要80%的相似度来进行识别,而另一用户可能需要95%的相似度来让内部成员访问分类信息。

总而言之,根据本公开的实施方式的模糊提取器是可重用的,使得在lwe问题很困难以及基础哈希函数是安全的假设下,多个公共辅助字符串不揭示有关原始生物特征或对应提取的随机数的任何信息。此外,本文所述的可重用模糊提取器(rfe)具有(实际上)非常小的公共辅助字符串大小。对于大小为100位的相同生物特征模板和相同数量的可能的误差(例如,在100位中最多10位是有误差的),根据本公开的rfe的公共辅助字符串的大小仅为12kb,而提供类似可重用的安全性的其他rfe(例如,参考文献no.1和no.3)的大小大于3mb。如果事实证明随机预言h的底层实例化(例如,哈希函数)是安全的,并且lwe假设针对量子敌对者成立,则根据本公开的实施方式的整个可重用模糊提取器系统针对量子敌对者是安全的。

图7是例示根据本公开的实施方式的rfe密码系统的流程图,其中,该系统使用可重用模糊提取器处理将生物特征数据转换为密码密钥,该可重用模糊提取器处理具有对随机预言模型进行建模的基础哈希函数(要素700),并且密码密钥被应用于对安全数据的访问的生物特征安全性(要素702)。

最后,虽然已经根据几个实施方式对本发明进行了描述,但本领域普通技术人员应当容易地认识到本发明在其它环境中可以具有其它应用。应注意到,可以有许多实施方式和实现。而且,所附的权利要求绝不是旨在将本发明的范围限制成上述具体实施方式。另外,任何“用于……的装置(means)”的用语旨在唤起对要素和权利要求的装置加功能的解读,而任何未特别使用“用于……的装置(means)”用语的要素不应被解读为装置加功能要素,即使权利要求以其它方式包括了“装置(means)”一词。而且,虽然已经按特定次序陈述了特定的方法步骤,但这些方法步骤可以按任何期望的次序发生并且落入本发明的范围内。

权利要求书(按照条约第19条的修改)

1.一种用于生物特征认证的系统,该系统包括:

一个或更多个处理器以及编码有可执行指令的非暂时性计算机可读介质,使得当执行所述可执行指令时,所述一个或更多个处理器执行以下操作:

使用可重用模糊提取器处理将生物特征数据转换为密码密钥r',所述可重用模糊提取器处理具有对随机预言模型进行建模的基础哈希函数;以及

当r'与先前计算的密码密钥r的比较显示匹配时,允许访问安全数据。

2.根据权利要求1所述的系统,其中,所述可重用模糊提取器处理包括生成处理和重建处理,其中,所述生成处理将公共参数和第一生物特征输入作为输入并输出公共辅助字符串和第一随机字符串,并且其中,所述重建处理将公共辅助字符串和第二生物特征输入作为输入并输出第二随机字符串。

3.根据权利要求2所述的系统,其中,当所述第一生物特征输入与所述第二生物特征输入足够相似时,所述第一随机字符串被认为等同于所述第二随机字符串,并且所述第二随机字符串用于验证对所述安全数据的访问。

4.根据权利要求1所述的系统,其中,基于带误差学习lwe问题的计算困难度假设和所述基础哈希函数的安全性来保证所述可重用模糊提取器处理的安全性。

5.根据权利要求1所述的系统,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问。

6.根据权利要求2所述的系统,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问,并且其中,所述一个或更多个处理器执行启用用户与服务器之间的电子通信的操作,

其中,所述用户与所述服务器之间的所述电子通信包括以下内容:

所述用户在所述服务器处登记第一指纹;

所述服务器执行所述生成处理,以获得所述公共辅助字符串和所述第一随机字符串;

所述服务器使用所述第一随机字符串作为对称加密方案的密码密钥对消息进行加密,从而得到密文;

所述服务器存储所述公共辅助字符串;

所述服务器擦除所述第一随机字符串;

所述服务器通过处理第二指纹并执行所述重建以获得所述第二随机字符串来认证所述用户,

其中,如果所述第一指纹与所述第二指纹足够相似,则认为所述第一随机字符串等同于所述第二随机字符串;以及

所述服务器使用所述第二随机字符串对所述密文进行解密以获得所述消息,以验证试图访问所述服务器的用户。

7.一种用于生物特征认证的计算机实现的方法,该方法包括以下动作:

使一个或更多个处理器执行编码在非暂时性计算机可读介质上的指令,使得在执行所述指令时,所述一个或更多个处理器执行以下操作:

使用可重用模糊提取器处理将生物特征数据转换为密码密钥r',所述可重用模糊提取器处理具有对随机预言模型进行建模的基础哈希函数;以及

当r'与先前计算的密码密钥r的比较显示匹配时,允许访问安全数据。

8.根据权利要求7所述的方法,其中,所述可重用模糊提取器处理包括生成处理和重建处理,其中,所述生成处理将公共参数和第一生物特征输入作为输入并输出公共辅助字符串和第一随机字符串,并且其中,所述重建处理将公共辅助字符串和第二生物特征输入作为输入并输出第二随机字符串。

9.根据权利要求8所述的方法,其中,当所述第一生物特征输入与所述第二生物特征输入足够相似时,所述第一随机字符串被认为等同于所述第二随机字符串,并且所述第二随机字符串用于验证对所述安全数据的访问。

10.根据权利要求7所述的方法,其中,基于带误差学习lwe问题的计算困难度假设和所述基础哈希函数的安全性来保证所述可重用模糊提取器处理的安全性。

11.根据权利要求7所述的方法,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问。

12.根据权利要求8所述的方法,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问,并且其中,所述一个或更多个处理器执行启用用户与服务器之间的电子通信的操作,

其中,所述用户与所述服务器之间的所述电子通信包括以下内容:

所述用户在所述服务器处登记第一指纹;

所述服务器执行所述生成处理,以获得所述公共辅助字符串和所述第一随机字符串;

所述服务器使用所述第一随机字符串作为对称加密方案的密码密钥对消息进行加密,从而得到密文;

所述服务器存储所述公共辅助字符串;

所述服务器擦除所述第一随机字符串;

所述服务器通过处理第二指纹并执行所述重建以获得所述第二随机字符串来认证所述用户,

其中,如果所述第一指纹与所述第二指纹足够相似,则认为所述第一随机字符串等同于所述第二随机字符串;以及

所述服务器使用所述第二随机字符串对所述密文进行解密以获得所述消息,以验证试图访问所述服务器的用户。

13.一种用于生物特征认证的计算机程序产品,该计算机程序产品包括:

存储在非暂时性计算机可读介质上的计算机可读指令,所述计算机可读指令能够由具有一个或更多个处理器的计算机执行,以使所述处理器执行以下操作:

使用可重用模糊提取器处理将生物特征数据转换为密码密钥r',所述可重用模糊提取器处理具有对随机预言模型进行建模的基础哈希函数;以及

当r'与先前计算的密码密钥r的比较显示匹配时,允许访问安全数据。

14.根据权利要求13所述的计算机程序产品,其中,所述可重用模糊提取器处理包括生成处理和重建处理,其中,所述生成处理将公共参数和第一生物特征输入作为输入并输出公共辅助字符串和第一随机字符串,并且其中,所述重建处理将公共辅助字符串和第二生物特征输入作为输入并输出第二随机字符串。

15.根据权利要求14所述的计算机程序产品,其中,当所述第一生物特征输入与所述第二生物特征输入足够相似时,所述第一随机字符串被认为等同于所述第二随机字符串,并且所述第二随机字符串用于验证对所述安全数据的访问。

16.根据权利要求13所述的计算机程序产品,其中,基于带误差学习(lwe)问题的计算困难度假设和所述基础哈希函数的安全性来保证所述可重用模糊提取器处理的安全性。

17.根据权利要求13所述的计算机程序产品,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问。

18.根据权利要求14所述的计算机程序产品,其中,所述生物特征数据是指纹,并且所述安全数据通过服务器来访问,并且其中,所述计算机程序产品还包括用于使所述一个或更多个处理器执行启用用户与服务器之间的电子通信的操作的指令,

其中,所述用户与所述服务器之间的所述电子通信包括以下内容:

所述用户在所述服务器处登记第一指纹;

所述服务器执行所述生成处理,以获得所述公共辅助字符串和所述第一随机字符串;

所述服务器使用所述第一随机字符串作为对称加密方案的密码密钥对消息进行加密,从而得到密文;

所述服务器存储所述公共辅助字符串;

所述服务器擦除所述第一随机字符串;

所述服务器通过处理第二指纹并执行所述重建以获得所述第二随机字符串来认证所述用户,

其中,如果所述第一指纹与所述第二指纹足够相似,则认为所述第一随机字符串等同于所述第二随机字符串;以及

所述服务器使用所述第二随机字符串对所述密文进行解密以获得所述消息,以验证试图访问所述服务器的用户。

19.根据权利要求1所述的系统,其中,所述系统还包括用于获得所述生物特征数据的指纹扫描仪。

20.根据权利要求1所述的系统,其中,所述系统还包括用于获得所述生物特征数据的眼睛扫描仪。

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