基于量子随机数和抗量子数字签名算法的身份验证方法

文档序号:38372941发布日期:2024-06-19 12:26阅读:12来源:国知局
基于量子随机数和抗量子数字签名算法的身份验证方法

本发明涉及抗量子密码和量子密码,具体涉及基于量子随机数和抗量子数字签名算法的身份验证方法及应用,本发明主要应用于验证区块链中的用户身份。


背景技术:

1、随着量子计算的不断发展,传统计算机无法解决的数学问题有可能在短时间内被量子计算机解决,因此传统的数字签名算法在量子计算机的攻击下面临严峻的安全性挑战。sphincs+算法是一种基于哈希函数和merkle树结构的无状态的抗量子数字签名算法,通过使用哈希函数对信息进行处理,并使用私钥对哈希值进行签名,从而生成数字签名,以保护通信和数据在量子计算的攻击手段下的完整性和认证性。与此同时,量子随机数是基于量子理论生成的真随机数,能够抵抗潜在的量子攻击。结合量子随机数和抗量子数字签名算法设计新型身份验证方法,能够进一步提高身份验证在后量子的攻击手段下的安全性。

2、基于背景同时基于杭州电子科技大学启动基金(kys275623071)及浙江省自然科学基金探索青年项目(q24a050008)。发明人设计了一种基于量子随机数和抗量子数字签名算法的身份验证方法,主要应用于验证区块链中的用户身份,以确保只有合法的用户才能参与到区块链网络中。


技术实现思路

1、本发明的目的是针对后量子攻击下现有密码协议的不足,设计一种基于量子随机数和抗量子数字签名算法的身份验证方法,具体包括签名阶段与验证阶段;

2、所述的签名阶段实现如下:

3、利用量子随机数生成器件随机生成多个私钥池;

4、将每个私钥池中的每个私钥元素分别经过哈希函数,得到每个私钥池对应的公钥池;

5、身份信息经过哈希函数后输出并均匀分块,对每个分块标记下标,每个分块输出的下标和值用于挑选私钥池中私钥元素,并将所有私钥池中挑选出的所有私钥元素,作为身份信息的签名;

6、将验证阶段所需身份信息、公钥池、签名公布;

7、所述的验证阶段实现如下:

8、接收需要验证的身份信息、公钥池、签名;

9、将身份信息经过哈希函数得到输出并分块,每块输出的下标和值用于挑选公钥池中元素,产生公钥;

10、身份信息经过哈希函数后输出并均匀分块,对每个分块标记下标,每个分块输出的下标和值用于挑选公钥池中的公钥元素,并将所有公钥池中挑选出的所有公钥元素作为公钥集合ⅰ;

11、将签名中的每个私钥元素分别经过哈希函数得到相应公钥元素,组成公钥集合ⅱ;

12、将签名得到的公钥集合ⅱ与公钥集合ⅰ中的公钥元素按顺序进行逐一对比,如果全部相等则验证为真,否则为假。

13、一种身份验证设备,该设备内置有一种基于量子随机数和抗量子数字签名算法的身份验证方法。

14、本发明有益效果如下:

15、本发明中,哈希函数被广泛应用于生成签名和验证签名的过程中。哈希函数的特点是将任意长度的输入数据映射为固定长度的输出,且输出的结果是不可逆的。因为量子计算机在短时间内无法破解哈希函数的不可逆性,这使得本发明能够抵抗量子计算机的攻击。

16、本发明中使用了merkle树结构来存储公钥和签名的信息。merkle树是一种二叉树结构,通过将数据分块并对每个块进行哈希运算,然后将哈希值逐层组合生成树状结构。这种结构使得验证签名的过程可以高效地进行,同时也增加了攻击者破解签名的难度。

17、本发明使用了一种无状态的哈希数字签名算法,不需要保存任何状态信息。这意味着签名和验证过程中不需要存储任何中间结果,从而减少了存储开销。

18、本发明使用了一种称为fors(full domain hash)的技术,可以在较短的时间内生成和验证签名。

19、本发明签名长度可以根据需求进行调节。通过调整参数,可以在安全性和签名长度之间进行权衡,以满足不同应用场景的需求。

20、本发明采用了一些抗量子攻击的技术,可以防止攻击者通过后量子攻击手段分析签名和验证过程中的侧信道信息来获取秘密密钥。

21、本发明结合量子随机数和抗量子的数字签名算法,可以防止攻击者通过量子攻击手段对私钥池进行分析来获取身份信息。



技术特征:

1.基于量子随机数和抗量子数字签名算法的身份验证方法,具体包括签名阶段与验证阶段,其特征在于,

2.根据权利要求1所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于量子随机数生成器件随机生成k个私钥池,每个私钥池包含t个长度为l的私钥元素,私钥池

3.根据权利要求2所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于每个私钥池中的每个私钥元素分别通过哈希函数,得到对应的公钥池

4.根据权利要求3所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于身份信息m经过哈希函数得到输出h=hash(m),并将输出h均分为k个分块(h1,h2,……,hk),其中每个分块的值可表示0到t-1之间的数,选出对应私钥池中对应的私钥元素作为签名(s'1,s'2,……,s'k)。

5.根据权利要求4所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于输出h的分块hi下标决定对应第i个私钥池,输出h的分块hi的值b决定对应第i个私钥池中的第b+1私钥元素。

6.根据权利要求1所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于验证阶段需要对接收的身份信息m经过哈希函数得到输出h=hash(m),并将输出h均分为k个分块(h1,h2,……,hk),其中每个分块的值可表示0到t-1之间的数。

7.根据权利要求6所述的基于量子随机数和抗量子数字签名算法的身份验证方法,其特征在于输出h的分块hi的下标决定对应第i个公钥池,输出h的分块hi的值b决定对应第i个公钥池中的第b+1公钥元素;从接收的公钥池中找出对应公钥元素的公钥集合。

8.一种身份验证设备,其特征在于该设备内置有一种如权利要求1-7所述的基于量子随机数和抗量子数字签名算法的身份验证方法。


技术总结
本发明公开一种基于量子随机数和抗量子数字签名算法的身份验证方法。本发明主要应用于验证区块链中的用户身份。该方法利用量子随机数生成器件生成私钥池和公钥池,并通过哈希函数对身份信息进行处理。在签名阶段,选择私钥池中的元素作为身份信息的签名;在验证阶段,将身份信息经过哈希函数得到输出并与公钥池进行比对验证。本发明具有抗量子计算机攻击的能力,可以提供相对安全的签名和验证,用于快速签名和验证身份,无需存储中间结果,减少了存储开销。它结合了抗量子数字签名和量子随机数生成器件等技术,可以提高在量子计算机攻击下的安全性。该方法在信息安全领域具有广泛的应用前景。

技术研发人员:段胜言,赵帅,赵杭豫,崔婷婷
受保护的技术使用者:杭州电子科技大学
技术研发日:
技术公布日:2024/6/18
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1