一种基于联盟链的抗量子攻击的数据加密方法技术

技术编号:38757594 阅读:19 留言:0更新日期:2023-09-10 09:42
本申请属于网络安全技术领域,涉及一种基于联盟链的抗量子攻击的数据加密方法。所述方法包括第一客户端节点产生交易内容,使用基于哈希函数的抗量子签名算法签名;使用私钥对交易内容、签名后的交易内容以及公钥一并签名,发送给第二客户端节点;使用基于哈希函数的抗量子验证算法验证交易内容,将验证结果返回第一客户端节点;满足背书策略的验证结果后,传输给排序服务并将交易内容加入到交易块中;向第三客户端节点广播交易块;使用基于哈希函数的抗量子验证算法对交易块进行验证,若验证同意的第三客户端节点数量超过预设阈值,则将交易块写入区块中。本发明专利技术提高了在区块链中应用的可能性和通信效率,同时还保证了应有的抗量子水平。子水平。子水平。

【技术实现步骤摘要】
一种基于联盟链的抗量子攻击的数据加密方法


[0001]本申请属于网络安全
,具体涉及一种基于联盟链的抗量子攻击的数据加密方法。

技术介绍

[0002]后量子密码是能够抵抗量子计算机对现有密码算法攻击的新一代密码算法。量子算法Shor和Grover会对目前所有流行的公钥密码体系产生威胁,可以在多项式时间内攻破RSA,对称密码算法,椭圆曲线数字签名算法(ECDSA),DSA数字签名算法等。后量子密码正是在这种情况之下产生的。
[0003]在2016年NIST开始了一项抗量子密码系统征集的计划,旨在寻找、设计、开发和标准化抗量子密码系统,以便于在未来取代我们现有的密码系统标准。经过三轮的征集提交选出了7个候选方案,包括4个公钥加密或密钥封装方案和3个数字签名方案。目前主流区块链系统中的底层签名算法大多使用是传统的椭圆曲线签名算法ECDSA和RSA算法。为了应对目前量子计算的威胁,需要将区块链底层的数字签名算法和加密算法替换成具有抗量子攻击的算法。
[0004]基于哈希的抗量子算法是后量子密码学中重要的一类,它可以仅使用密码哈希函数创建数字签名。如果所选的哈希函数在将来被攻破,就可以用新的哈希函数来替换提高安全性。最早的基于哈希的数字签名算法是Lamport提出的,但是该算法容易被攻击者篡改而且他的密钥以及签名都很大。之后Merkle根据Winternitz的一个猜想提出了WOTS(Winternitz

one

time signature),它有三个值参数化减少了签名和密钥的大小。Furqan Shahid又提出了NOTS的签名方案进一步减少了密钥大小,但是由于其生成私钥的方式导致私钥之间是互相有关联的而且NOTS大幅度减少了密钥和签名大小导致基于NOTS的签名方案在抵抗量子攻击方面的水平有所下降。

技术实现思路

[0005]面对现有区块链中的数字签名方法在应对量子计算攻击时存在较大隐患,本专利技术提出了一种基于联盟链的抗量子攻击的数据加密方法,基于哈希函数的抗量子签名算法在传统NOTS签名算法的基础上通过修改生成签名的方式以及增加了校验机制,提高了其可抵御量子攻击的能力,然后使用IPFS分布式文件系统降低密钥储存成本以及信息传输的通信成本。可以实现联盟链系统的抵抗量子攻击的能力,即使未来量子计算攻击能力提高了,也可以用摘要更多的哈希函数来提高加密方案的抗量子水平。
[0006]一种基于联盟链的抗量子攻击的数据加密方法,包括如下:
[0007]第一客户端节点产生交易内容,并使用基于哈希函数的抗量子签名算法对所述交易内容签名;
[0008]第一客户端节点使用交易身份证书的私钥SK对交易内容、签名后的交易内容以及公钥PK一并签名,并将签名结果发送给第二客户端节点;
[0009]第二客户端节点使用基于哈希函数的抗量子验证算法验证第一客户端节点发送的交易内容,并将验证结果返回第一客户端节点;
[0010]第一客户端节点收到第二客户端节点数量满足背书策略的验证结果后,传输给排序服务,产生交易块并将所述交易内容加入到交易块中;
[0011]第一客户端节点向联盟链fabric中的第三客户端节点广播所述交易块;
[0012]第三客户端节点接收到交易块后,使用基于哈希函数的抗量子验证算法对所述交易块进行验证,若验证同意交易块的交易内容的第三客户端节点数量超过预设阈值,则将所述交易块写入区块中。
[0013]进一步的,所述基于哈希函数的抗量子签名算法包括:
[0014]使用伪随机函数产生N+1个互不关联的私钥SK
i
,i=0...N;
[0015]利用N+1个私钥SK
i
,通过哈希函数的映射产生N+1个相应的公钥PK
i
,i=0...N;
[0016]采用哈希函数将交易信息转成M位的信息摘要,将M位的信息摘要H分成N份,并将摘要信息中不为0的个数以及整个交易信息P,将这两个信息组成第N+1份信息摘要P
i

[0017]使用N+1个私钥SK
i
对相应的N+1份信息摘要P
i
签名,产生N+1个签名S
i

[0018]进一步的,所述基于哈希函数的抗量子验证算法包括:
[0019]采用哈希函数将交易信息P转成M位的信息摘要,同时将M位的信息摘要H分成N份;统计摘要信息中不为0的个数以及整个交易信息P,将这两个信息组成第N+1份信息摘要Pi;
[0020]对N+1份的信息摘要P
i
分别进行编码,计算信息摘要P
i
的十进制的大小,并在模上M再加上1得到结果T
i

[0021]将N+1份信息摘要P
i
对应的签名S
i
分成前后相等两部分fS
i
和bS
i
,将前部分采用哈希函数进行M+1

T
i
次的迭代得到结果T

fS
i
,后半部分采用哈希函数进行T
i
次的迭代得到结果T

bS
i
,将这两部分拼接在一起得到验证密钥VK
i

[0022]通过比较验证密钥VK
i
和公钥PK
i
,若所述验证密钥VK
i
与对应的公钥PK
i
相等,则验证通过,否则验证失败。
[0023]本专利技术与现有技术相比,具有以下优点:
[0024]本专利技术所使用的基于哈希函数的抗量子签名算法相对于传统的基于哈希的数字签名方法具有更小的签名和密钥大小,提高了在区块链中应用的可能性和通信效率,同时还保证了应有的抗量子水平。如果后面出现了更强的量子攻击,本方案可以通过增加哈希函数的摘要长度来消除安全隐患,同时相比于基于格和编码的签名算法也具有较小的签名和密钥长度。因为在fabric中运用了本方案中的数字签名算法,所以联盟链fabric具有抗量子攻击的能力,恶意用户无法对交易信息的签名以及同样使用该算法生成签名进行篡改,提高了fabric的安全性。因为在系统中引入了IPFS分布式文件系统减少了通信开销和节点的储存压力,提高了系统的交易效率。
附图说明
[0025]图1是本专利技术实施例的一种基于联盟链的抗量子攻击的数据加密方法的流程图;
[0026]图2是本专利技术实施例的基于哈希函数的抗量子签名算法的实现流程图;
[0027]图3是本专利技术实施例发送节点的基于哈希函数的抗量子签名算法的实现流程图;
[0028]图4是本专利技术实施例的基于哈希函数的抗量子签名验证的实现流程图;
[0029]图5是本专利技术实施例接受节点的基于哈希函数的抗量子签名验证的实现流程图。
具体实施方式
[0030]下面将结本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,包括如下:第一客户端节点产生交易内容,并使用基于哈希函数的抗量子签名算法对所述交易内容签名;第一客户端节点使用交易身份证书的私钥SK对交易内容、签名后的交易内容以及公钥PK一并签名,并将签名结果发送给第二客户端节点;第二客户端节点使用基于哈希函数的抗量子验证算法验证第一客户端节点发送的交易内容,并将验证结果返回第一客户端节点;第一客户端节点收到第二客户端节点数量满足背书策略的验证结果后,传输给排序服务,产生交易块并将所述交易内容加入到交易块中;第一客户端节点向联盟链fabric中的第三客户端节点广播所述交易块;第三客户端节点接收到交易块后,使用基于哈希函数的抗量子验证算法对所述交易块进行验证,若验证同意交易块的交易内容的第三客户端节点数量超过预设阈值,则将所述交易块写入区块中。2.根据权利要求1所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,第一客户端节点产生交易内容之前还包括向数字证书管理机构申请交易证书;所述数字证书管理机构验证第一客户端节点的身份证书,若验证通过后,则向所述第一客户端节点颁发交易证书。3.根据权利要求2所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,所述向数字证书管理机构申请交易证书之前还包括向所述数字证书管理机构申请身份证书。4.根据权利要求2所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,所述向数字证书管理机构申请交易证书包括:第一客户端节点使用自身的身份证书中的私钥SK以及基于哈希函数的抗量子签名算法对产生的交易内容进行签名,并将签名后的交易内容作为交易证书申请发送给数字证书管理机构;数字证书管理机构收到交易证书申请后,使用第一客户端节点的身份证书中的公钥PK以及基于哈希函数的抗量子验证算法对收到的交易内容进行验证;数字证书管理机构验证通过后,向第一客户端节点颁发交易证书。5.根据权利要求1或4所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,所述基于哈希函数的抗量子签名算法包括:使用伪随机函数产生N+1个互不关联的私钥SK
i
,i=0...N;利用N+1个私钥SK
i
,通过哈希函数的映射产生N+1个相应的公钥PK
i
,i=0...N;采用哈希函数将交易信息转成M位的信息摘要,将M位的信息摘要H分成N份,并将摘要信息中不为0的个数以及整个交易信息P,将这两个信息组成第N+1份信息摘要P
i
;使用N+1个私钥SK
i
对相应的N+1份信息摘要P
i
签名,产生N+1个签名S
i
。6.根据权利要求5所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,所述利用N+1个私钥SK
i
,通过哈希函数的映射产生N+1个相应的公钥包括:将所述私钥SK
i
分成前后对等的两部分第一私钥fSK
i
和第二私钥bSK
i
;分别对这两部分第一私钥fSK
i
和第二私钥bSK
i
采用哈希函数迭代M+1次;
将迭代后的两部分第一私钥fSK
i
和第二私钥bSK
i
重新拼接在一起组成公钥PK
i
。7.根据权利要求5所述的一种基于联盟链的抗量子攻击的数据加密方法,其特征在于,所述使用N+1个私钥SK
i
对相应的N+1份信息摘要P
i
签名,产生N+1个签...

【专利技术属性】
技术研发人员:徐光侠熊劲松田志宏沈剑刘俊马创刘园孙彦斌李默涵仇晶
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1