基于全同态加密的认证方法和用户设备以及认证服务器与流程

文档序号:13969111阅读:469来源:国知局

本发明涉及生物特征识别和认证技术领域,尤其涉及关于虹膜认证技术,具体而言,是一种基于全同态加密的认证方法,以及实现该方法的用户设备以及认证服务器。



背景技术:

近年来,生物识别技术发展迅猛,给人们带来了便捷。生理特性的种类很多,如指纹、虹膜、面相、dna等等特征。其中因为人眼的虹膜在出生6个月后即发育成熟,之后就会保持终生不变,更不会出现如指纹磨损、面容变化导致设备拒识本人的情况,而且眼球剥离人体后虹膜会随瞳孔放大而失去活性,很难被伪造。相较于指纹0.8%、人脸识别2%左右的误识率,虹膜识别误识率可低至百万分之一。

由于生物识别技术的广泛使用,越来越多的行业采用此技术来进行个人身份的鉴定。与此同时,随着信息化进程的加快,电子认证在解决网络信任需求方面的优势已被越来越多的行业认可。但网络数据传输和计算过程中,也存在许多隐患,如果云计算涉及个人和企业的敏感信息,但是又不能保证数据不被侵害,一些保密性需要较高的行业便不敢尝试将业务应用放到云中心,因为如果将云端的数据解密后进行明文计算,一旦信息泄露,后果不堪设想。

有鉴于此,特提出本发明。



技术实现要素:

本发明要解决的技术问题在于克服现有技术的不足,提供一种基于全同态加密的认证方法,能够在密文不解密的情况下,对生物特征信息密文进行验证,能够达到防止生物特征信息认证后的结果被篡改的安全效果;其中生物特征包括虹膜、指纹等等特征;并且本发明还提供了实施所述方法的用户设备以及认证服务器。

为解决上述技术问题,本发明采用技术方案的基本构思是:

一种基于全同态加密的认证方法,在用户终端侧,包括

为用户生成全同态加密算法的密钥和公钥;将密钥存储在移动存储设备中;

采集用户原始生物特征,使用所述公钥对原始生物特征加密生成原始生物特征密文;并将用户信息、原始生物特征密文以及公钥发送至认证服务器存储以完成注册;

采集用户当前生物特征并利用所述公钥加密生成当前生物特征密文;将用户信息和当前生物特征密文发送至认证服务器请求认证以使认证服务器比较两密文后反馈加密的认证信息;

获取所述移动存储设备中的密钥,使用密钥对认证信息进行解密并将解密结果发送至认证服务器。

进一步的,上述全同态加密算法的认证方法中:所述加密的认证信息为认证服务器对原始生物特征密文和当前生物特征密文计算的海明距离和为该海明距离生成的消息认证码,消息认证码具有唯一性。

优选的,上述全同态加密算法的认证方法中:原始生物特征和当前生物特征均为虹膜。

本发明还提供了该基于全同态加密的认证方法认证服务器侧,包括

获取用户信息、用户被公钥加密后的原始生物特征密文以及所述公钥,并进行关联和存储以完成用户信息的注册;

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行比较后,反馈加密的认证信息至用户终端,以使用户终端通过与所述公钥对应的密钥对该认证信息解密;

获取用户终端对认证信息的解密结果,判断是否通过验证并反馈认证结果。

进一步的,上述全同态加密算法的认证方法中:还包括:

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行海明距离计算,为计算出的海明距离生成消息认证码,将海明距离和消息认证码作为所述认证信息发送至用户终端。

本发明还提供了一种用户设备,包括存储介质和存储在存储介质中的程序,该程序被运行是执行以下步骤:

为用户生成全同态加密算法的密钥和公钥,将密钥存储在移动存储设备中;

采集用户原始生物特征,使用所述公钥对原始生物特征加密生成原始生物特征密文;并将用户信息、原始生物特征密文以及公钥发送至认证服务器存储以完成注册;

采集用户当前生物特征并利用所述公钥加密生成当前生物特征密文;将用户信息和当前生物特征密文发送至认证服务器请求认证以使认证服务器比较两密文后反馈加密的认证信息;

获取所述移动存储设备中的密钥,使用密钥对认证信息进行解密并将解密结果发送至认证服务器。

进一步的,在上述用户设备中:所述加密的认证信息为认证服务器对原始生物特征密文和当前生物特征密文计算的海明距离和为该海明距离生成的消息认证码,消息认证码具有唯一性。

进一步的,在上述用户设备中:原始生物特征和当前生物特征均为虹膜。

本发明还提供了实施上述方法的一种认证服务器,包括处理器、存储介质以及存储在存储介质中的程序,程序被处理器运行时执行以下步骤:

获取用户信息、用户被公钥加密后的原始生物特征密文以及所述公钥,并进行关联和存储以完成用户信息的注册;

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行比较后,反馈加密的认证信息至用户终端,以使用户终端通过与所述公钥对应的密钥对该认证信息解密;

获取用户终端对认证信息的解密结果,判断是否通过验证并反馈认证结果。

进一步的,在上述认证服务器中:还包括:

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行海明距离计算,为计算出的海明距离生成消息认证码,将海明距离和消息认证码作为所述认证信息发送至用户终端。

采用上述技术方案后,本发明与现有技术相比具有以下有益效果:

本发明基于全同态加密的认证方法,基于用户终端和认证服务器完成,无需可信中心参与验证,直接通过一次mac认证方法在认证服务器端完成,极大地提升了效率;用户终端对采集的生物特征进行全同态加密同时结合使用移动存储设备存储密钥,安全性很高。基于全同态加密算法的特性:全同态加密的密文,解密后的结果等于在明文态对明文做同样计算的结果,因此本发明方法认证时直接在云端的认证服务器端进行生物特征密文之间的计算,无需多次交互就能完成密文生物特征的识别验证;并且对生物特征数据加密后的密文保存和传输以及计算,期间不对生物特征密文进行解密,避免了用户的生物特征信息泄露的风险,极大地提高了安全性;即使密文生物特征被窃取,也不会暴露真实的生物特征信息,高安全性保障。并且,本发明还提供了用于实施该方法的用户设备和认证服务器。

附图说明

图1是本发明提供的基于全同态加密的认证方法在用户终端侧的流程示意图;

图2是本发明方法中用户终端和认证服务器交互示意图;

图3是本发明提供的用户设备结构框图;

图4是本发明提供的认证服务器的结构框图。

具体实施方式

下面结合附图和具体实施例,对本发明作进一步说明,以助于理解本发明的内容。

本发明提供的基于全同态加密的认证方法,基于c/s架构(client/server结构)即客户端和服务端架构,通过用户终端与云平台的认证服务器交互实现。

本发明分别提供了该方法在用户终端侧和认证服务器侧的步骤,其中在用户终端侧配合移动存储设备实现,如图1所示,具体包括

s1.为用户生成全同态加密算法的密钥和公钥;将密钥存储在移动存储设备中;

在本发明认证方法中,通过对用户身份产生全同态计算的密钥和公钥,密钥和公钥之间彼此唯一对应;密钥具有唯一性和不可复制性,存储在移动存储设备(如u盘)中,作为用户解密的唯一标识。采用全同态加密算法生成密钥和公钥属于现有技术,对此本申请的发明人也公开多篇文章,此处不做多余赘述。

用户终端提供录入界面,以获取用户信息(账户名、登录密码等信息),并检测用户终端是否有接入移动存储设备,如没有,则在界面显示请求接入移动存储设备的提示;如有,则将密钥存储在检测到的移动存储设备中。

s2.采集用户原始生物特征,使用所述公钥对原始生物特征加密生成原始生物特征密文;

用户终端采集用户原始生物特征,原始生物特征即用户注册时录入的生物特征,本发明中生物特征包括指纹、虹膜等等生物特征,本文以虹膜为例,将此采集的虹膜图像进行处理,生成二进制字符串存入用户终端数据库结构的bio模块(二进制输入/输出模块)中,为方便描述,本文将存入bio模块的原始虹膜数据记为“bio”;使用公钥加密原始虹膜bio,即得到全同态加密算法进行加密的原始虹膜密文,本文描述时原始虹膜密文简记为“bio*”。

s3.将用户信息和原始生物特征密文发送至认证服务器请求认证以使认证服务器比较两密文后反馈加密的认证信息;

用户终端获取的用户信息(简记为“u”),将用户信息u和原始虹膜bio*以及所述公钥发送至认证服务器存储,使认证服务器将用户信息u和原始虹膜bio*以及公钥关联,以完成用户身份的注册。

s4.用户身份认证时,采集用户当前生物特征并利用所述公钥加密生成当前生物特征密文;

当前生物特征是指用户注册完成以后用注册账户登录时,采集的生物特征;仍以虹膜为例,用户终端提供界面输入登录的用户信息(用户名、密码等),与注册时一致则进入认证流程;采集用户当前虹膜,虹膜图像处理后以字符串形式存储,本文将存入的当前虹膜数据简记为“x”;使用所述公钥对存入的当前虹膜x进行加密生成当前虹膜密文,本文简记为“x*”。

用户终端采用全同态加密算法生成密钥和公钥后,密钥被存储在移动存储设备中的安全区域中,如经过加密处理的数据库中或者可信执行环境或者安全芯片中,公钥可以存储在用户终端,可以避免公钥的泄漏,提高认证的安全性;在注册过程中公钥被发送至认证服务器存储,该公钥也具有唯一性,其在认证服务器中与用户信息、以及用户的原始生物特征密文关联后,公钥也具备了代表用户身份的意义。

因此,认证过程中,用户终端使用公钥对用户当前生物特征进行加密时,优选地,本实施例采用存储在用户终端侧的公钥进行加密;为了防止公钥被恶意篡改等行为,认证时用户终端可以从认证服务器端获取所述公钥,进行当前生物特征的加密,则用户终端侧完成注册后可以不存储公钥,防止对公钥的恶意篡改导致的认证失败。

s5.将用户信息和当前生物特征密文发送至认证服务器请求认证以使认证服务器比较两密文后反馈加密的认证信息;

用户终端将登录用户信息u和生成的当前虹膜密文x*发送至认证服务器中,以使认证服务器在不对密文解密的情况下,将原始虹膜bio*与当前虹膜x*进行比较,即计算两个虹膜密文的海明距离d*,并计算得出的海明距离d*的消息认证码(mac,messageauthenticationcode)t*,消息认证码t*具有唯一性;海明距离d*和消息认证码t*均需要密钥解密,将海明距离和消息认证码作为认证信息发送至用户终端进行验证。

s6.用户终端获取所述移动存储设备中的密钥,使用密钥对认证信息进行解密并将解密结果发送至认证服务器。

用户终端收到的认证信息中包括:原始生物特征密文bio*和当前生物特征密文x*的海明距离d*、以及为该海明距离d*生成的消息认证码t*,通过检测到的移动存储设备中的密钥对该海明距离d*和消息认证码机t*进行解密,解密得到海明距离明文d和消息认证码明文t,将明文结果发送给认证服务器验证,验证通过则认证成功,否则认证失败,服务器认证结果会反馈至用户终端。

本发明提供的基于全同态加密的认证方法中,利用生物特征和全同态加密算法相结合的方式进行用户身份注册和认证,对生物特征数据进行全同态算法加密(即公钥加密)保存以及传输,然后送到云端服务器进行密文之间的计算,保证了用户信息数据的安全性和完整性;同时采用移动存储设备存储密钥的形式,使用户注册或者认证时必须插入移动存储设备才能进行操作,提高了安全保证。

另一方面,本发明基于全同态加密的认证方法在认证服务器侧,如图2所示,包括

b1.获取用户信息、用户被公钥加密后的原始生物特征密文以及所述公钥,并进行存储以完成用户信息的注册;

在注册过程中,认证服务器对用户终端发送的注册信息数据进行存储,即收到所述用户信息u、上述原始生物特征密文(仍以上述虹膜为例,)bio*、以及公钥后,将用户信息、虹膜密文bio*以及公钥进行关联并存入数据库中完成注册,同时反馈注册结果至用户终端。

b2.获取用户通过所述公钥加密的当前生物特征密文,将该密文与原始生物特征密文进行比较后,反馈加密的认证信息至用户终端,以使用户终端通过与所述公钥对应的密钥对该认证信息解密;

认证过程中,认证服务器获取到用户终端全同态算法加密后的当前虹膜密文x*和用户信息u,根据该收到的用户信息u到认证服务器数据库中匹配,找出一致的用户信息以及该用户信息关联的原始虹膜密文bio*,将密文bio*与密文x*进行海明距离d*的计算,表达式为d*=hd(x*,bio*)。

计算出两密文的海明距离d*后,设zr是由r位整数组成的集合,从zr中均匀随机选取(r0,r1),则计算海明距离d*的消息认证码t*的表达式为:

t*=r0·d*+r1;

其中,r的取值为7-80;r取80位时,可以达到2^-80等级安全;但考虑到计算效率,为此本实施例中可以把虹膜位串切分成几个段,例如4段的话,r取值就可以减小到7。

将计算出的消息认证码t*与密文的海明距离d*作为认证信息发送至用户终端,使用户终端执行上述步骤s6,用移动存储设备中的密钥对海明距离d*和消息认证码t*解密,得出明文海明距离d和消息认证码t,用户终端解密出的明文结果发送至认证服务器中。

b3.获取用户终端对认证信息的解密结果,判断是否通过验证并反馈认证结果。验证时,解密结果中的明文海明距离d与消息认证码t需具备:

d=(t-r1)/r0;

解密结果符合上式则验证成功,否则,验证失败。如果验证成功,说明d就是对d*的解密,认证服务器根据d做相应的判断结果,判断认证通过与否,判断结果发送至用户终端。

由此可知,本发明方法基于用户终端和认证服务器完成,无需可信中心参与验证,直接通过一次mac认证方法在认证服务器端完成,极大地提升了效率;

用户终端对采集的生物特征进行全同态加密同时结合使用移动存储设备存储密钥,安全性很高。基于全同态加密算法的特性:全同态加密的密文,解密后的结果等于在明文态对明文做同样计算的结果;因此本发明方法认证时直接在云端的认证服务器端进行生物特征密文之间的计算,无需多次交互就能完成密文生物特征的识别验证;并且对生物特征数据加密后的密文保存和传输以及计算过程中,期间不对生物特征密文进行解密,避免了用户的生物特征信息泄露的风险,极大地提高了安全性;即使密文状态的生物特征被窃取,也不会暴露真实的生物特征信息,高安全性保障。

例如,针对银行、保险等高保密要求的行业;银行部门需要客户进行身份验证,此时,客户登录用户终端,用户终端此时从认证服务器数据库中获取全同态加密算法生成的上述公钥对当前虹膜进行加密,然后把虹膜密文送至云端认证服务器进行密文之间的计算以及生成消息认证码,计算完成后的结果和消息认证码发送回用户终端解密,认证服务器接收解密出的结果进行验证,可确保结果的完整性。故本方法可应用于医疗信息化、互联网彩票、电子发票、网上证券、网上保险等领域中,安全性很高。

本发明还提供了用于实施上述方法的一种用户设备,如图3所示,用户设备在本实施例中包括存储401和存储在存储介质401中的程序,该程序被处理器402运行时执行以下步骤:

为用户生成全同态加密算法的密钥和公钥,将密钥存储在移动存储设备中;

采集用户原始生物特征,使用所述公钥对原始生物特征加密生成原始生物特征密文;并将用户信息、原始生物特征密文以及公钥发送至认证服务器存储以完成注册;

采集用户当前生物特征并利用所述公钥加密生成当前生物特征密文;将用户信息和当前生物特征密文发送至认证服务器请求认证,以使认证服务器比较两密文后反馈加密的认证信息;所述加密的认证信息为认证服务器对原始生物特征密文和当前生物特征密文计算的海明距离,以及为该海明距离生成的消息认证码,消息认证码具有唯一性。

获取所述移动存储设备中的密钥,使用密钥对认证信息进行解密并将解密结果发送至认证服务器。

本发明用户设备中,程序运行时采集的生物特征优选为虹膜,以降低误识率。

上述程序对应于在用户终端侧执行的全同态加密的认证方法,具体可参考上文中本发明基于全同态加密的认证方法在用户终端侧的描述,此处不再赘述。

本发明还提供了实施上述方法的一种认证服务器,如图4所示的,包括处理器502、存储介质501以及存储在存储介质501中的程序,程序被处理器502运行时执行以下步骤:

获取用户信息、用户被公钥加密后的原始生物特征密文以及所述公钥,并进行关联和存储以完成用户信息的注册;

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行比较后,反馈加密的认证信息至用户终端,以使用户终端通过与所述公钥对应的密钥对该认证信息解密;

获取用户终端对认证信息的解密结果,判断是否通过验证并反馈认证结果。

进一步的,在上述认证服务器中:还包括:

获取用户通过全同态加密算法加密的当前生物特征密文,将该密文与原始生物特征密文进行海明距离计算,为计算出的海明距离生成消息认证码,将海明距离和消息认证码作为所述认证信息发送至用户终端。

具体的,认证过程中,认证服务器获取到用户终端全同态加密后的当前虹膜密文x*和用户信息u,根据该收到的用户信息u到认证服务器数据库中匹配,找出一致的用户信息以及与该用户信息关联的原始虹膜密文bio*,将密文bio*与密文x*进行海明距离d*的计算,表达式为d*=hd(x*,bio*)。

计算出两密文的海明距离d*后,设zr是由r位整数组成的集合,从zr中均匀随机选取(r0,r1),则计算海明距离d*的消息认证码t*的表达式为:

t*=r0·d*+r1;

其中,r的取值为7-80;r取80位时,可以达到2^-80等级安全;但考虑到计算效率,为此本实施例中可以把虹膜位串切分成几个段,例如4段的话,r取值就可以减小到7。

将计算出的消息认证码t*与密文的海明距离d*作为认证信息发送至用户终端,使用户终端执行上述步骤s6,用移动存储设备中的密钥对海明距离d*和消息认证码t*解密,得出明文海明距离d和消息认证码t,用户终端解密出的明文结果发送至认证服务器中进行验证。

验证时,解密结果中的明文海明距离d与消息认证码t需具备:

d=(t-r1)/r0;

解密结果符合上式则验证成功,否则,验证失败;如果验证成功,说明d就是对d*的解密,认证服务器根据d做相应的判断结果,判断认证通过与否,判断结果发送至用户终端。

认证服务器中的程序对应于在认证服务器侧执行的全同态加密的认证方法,具体可参考上文中本发明基于全同态加密的认证方法在认证服务器侧的描述,此处不再赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

本发明实施例中的述及的程序,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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