基于同态加密的网络安全身份验证方法与装置

文档序号:36507354发布日期:2023-12-28 20:34阅读:57来源:国知局
基于同态加密的网络安全身份验证方法与装置

本发明属于加密,具体涉及一种基于同态加密的网络安全身份验 证方法。


背景技术:

1、随着大数据的发展与应用,生物特征识别技术得到了快速地发展,并在新 型验证技术中开始得到广泛应用。生物特征的种类有很多种,包括人的指纹、 面部、虹膜、dna等,这些生物特征与传统的口令密码相比,更加难以被伪造, 据了解,不同种类的生物特征误识率都低于2%,其中指纹识别的误识率只有 0.8%,而虹膜的误识率更是只有约百万分之一。

2、但是,与生物特征的低误识率相比,由于生物特征更加具有单一性与隐私 性,因此一旦在数据的传输或计算过程中被非法攻击,产生数据泄露的风险, 该风险对用户所造成的损失,将远远大于传统口令密码所带来的。同时,由于 部分公司不具备对用户的生物特征进行验证的能力,因此需要将该验证过程外 包给第三方验证平台进行计算。但由于生物特征的敏感性,不便于直接将生物 特征以明文的形式直接传递给验证平台,以免造成更大的损失。

3、中国专利(cn111181712a)公开了一种同态加密生物特征的身份验证方法, 该发明使用同态加密,在客户端侧对用户的虹膜生物特征进行加密处理,将加 密过后的密文传递到服务器,由服务器将密文形式的生物特征与原始生物特征 密文进行海明距离的计算,通过计算得到的结果进行解密,根据解密的结果, 判断本次验证请求是否通过。

4、目前网络空间环境日趋复杂,网络攻击的形式、频率都在不断地增加。为 了保证第三方验证平台在接收客户端传递的密文生物特征向量时不会受到异常 流量的重放攻击,可以采用在密文中加入随机数进行防御,收发双方记住使用 过的人随机数,如发现密文中含有以前使用过的随机数,就认为是重放攻击。 但是,由于需要额外保存使用过的随机数,若记录的时间段较长,则保存和查 询的开销较大。


技术实现思路

1、本发明的目的在于解决上述现有技术中存在的难题,提供一种基于同态加 密的网络安全身份验证方法,解决如何有效抵抗重放攻击的技术问题,能降低 验证平台的存储开销。

2、本发明是通过以下技术方案实现的:一种基于同态加密的网络安全身份验 证方法,包括以下步骤:

3、接收由客户端发送的验证请求后,返回随机数矩阵r,所述随机数矩阵r与 客户端中的待识别的生物特征矩阵m具有相同的维度与行数;

4、接收由客户端发送的随机生成的公钥与通过随机数矩阵r结合同态加密算 法生成的新矩阵k_enc,所述新矩阵k_enc=(m_enc)(r_enc),其中,m_enc表 示生物特征矩阵m的同态加密矩阵,r_enc表示随机数矩阵r的同态加密矩阵;

5、根据随机数矩阵r对所述新矩阵k_enc进行恢复运算,从而得到生物特征 矩阵m的同态加密矩阵m_enc;

6、根据所述公钥对预先存储的全部生物特征矩阵模板进行同态加密,得到加 密生物特征矩阵模板;所述生物特征矩阵模板是指明文生物特征矩阵,并且明 文生物特征与用户身份的对应关系是未知的;

7、将同态加密矩阵m_enc与全部加密生物特征矩阵模板逐一进行海明距离 计算,得到若干加密海明距离;

8、从所述若干加密海明距离中选出最小加密海明距离dh,min返回给客户端,使 得客户端能够通过与所述公钥配对的私钥对最小加密海明距离dh,min进行同态 解密得到明文海明距离dh,并通过比较明文海明距离dh与阈值来获得身份验证 结果。

9、进一步的,随机数矩阵r中的每个元素均是介于0~1之间的小数。

10、进一步的,依据公式mi,j=ki,j÷ri,j对新矩阵k_enc进行行恢复运算,得到同 态加密矩阵m_enc,mi,j为同态加密矩阵m_enc中的元素,ki,j为新矩阵k_enc 中的元素,ri,j为同态加密矩阵r_enc中的元素。

11、进一步的,所述生物特征矩阵为n×m阶矩阵,n≥1,m≥1,同一用户的生 物特征矩阵中的行向量即对应同一种生物特征的生物特征向量。

12、进一步的,不同用户的生物特征矩阵通过并行计算的方式进行身份验证。

13、本发明还提供一种基于同态加密的网络安全身份验证装置,其特征在于: 包括生物特征向量提取模块、特征向量打包模块、加密模块、解密模块与验证 模块;

14、所述生物特征向量提取模块,用于识别生物特征并提取生物特征向量;

15、所述特征向量打包模块,用于将提取到的同一用户的生物特征向量打包成 生物特征矩阵m;

16、所述验证模块,用于向验证平台发送验证请求并展示验证结果;

17、所述加密模块,用于接收验证平台在收到验证请求后返回的随机数矩阵r, 将随机数矩阵r结合同态加密算法生成新矩阵k_enc,并将新矩阵k_enc与随 机生成的公钥发送给验证平台;所述新矩阵k_enc=(m_enc)(r_enc),其中, m_enc表示生物特征矩阵m的同态加密矩阵,r_enc表示随机数矩阵r的同态 加密矩阵;随机数矩阵r与待识别的生物特征矩阵m具有相同的维度与行数;

18、所述解密模块,用于接收验证平台的加密计算结果,通过与所述公钥配对 的私钥对加密计算结果进行同态解密得到明文海明距离,并发送给验证模块, 使得验证模块能够将明文海明距离与阈值进行比较而得到验证结果;所述加密 计算结果是指通过对新矩阵k_enc进行恢复运算得到的同态加密矩阵m_enc 与各个加密特征矩阵模块的加密海明距离中的最小加密海明距离dh,min。

19、与现有技术相比,本发明的有益效果包括:

20、1、本发明将同态加密技术与随机数矩阵相结合,一方面,通过同态加密 技术,保护用户的生物特征在传输到第三方验证平台,以及在第三方验证平台 进行验证计算时,不被网络攻击或云计算平台的非法窥探所泄露;另一方面, 通过引入与生物特征向量维度相同的随机数矩阵,在传递到验证平台之前由客 户端将加密后的随机数矩阵与加密后的生物特征矩阵进行点乘,验证平台因此 可以得到独一无二的生物特征密文矩阵,防止遭遇非法重放攻击。

21、2、本发明的公钥与私钥均是随机产生,因此每次验证产生的公钥与私钥 均是不同的,并且每次产生的公钥不仅用于加密生物特征矩阵,还用于加密生 物特征矩阵模板,从而每次计算出的密文海明距离需要相应次随机产生的私钥 进行解密。那么当历史窃取到的加密生物特征矩阵重放给验证平台所计算出的 加密海明距离,用本次产生的私钥进行解密一定无法解密出正确的海明距离, 从而验证失败,使重放攻击无法成功。

22、3、生物特征批量处理:客户端在提取用户生物特征的过程中,根据提取算 法的不同,每位用户大约可提取到几十到几百个不同的二进制向量,本发明通 过将提取到的用户特征向量打包成矩阵形式,将所有向量共同运算,可以提高 验证过程的效率。另外,并行验证不同用户的生物特征时更易于将不同用户的 生物特征加以区分。

23、4、随机数矩阵r中的每个元素均是介于0~1之间的小数,可以保证如果 同一个人连续多次发出认证请求,云服务器收到的特征矩阵也是不相同的,可 以防止非法用户冒充用户进行连续多次的重放攻击。

24、5、本发明不必在验证平台中存储已经使用过的随机数或随机数矩阵,能够 大大降低存储开销。

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