本发明属于区块链网络安全,尤其涉及一种基于后量子密码的区块链安全防御方法及系统。
背景技术:
1、区块链是一种按照时间顺序将数据以链式结构组合而成的分布式计算范式,具有去中心化、共同维护、不可篡改、易于验证等特性,能够以极低的成本实现多方互信,在供应链金融、保险理赔、碳权交易等领域有着广泛的应用前景。
2、针对安全,现有区块链实现了加密、签名与验证等功能,采用了多种公钥密码算法,如rsa、ecdsa。公钥密码即非对称密码,在执行过程中使用一对不同的公私钥来实现既定功能。公钥密码可被应用于加密、密钥分发与数字签名等场景。具体来说,使用公钥密码进行加密的基本过程为:发送方和接受方进行消息传递,发送方使用接收方的公钥对待传递的消息进行加密,得到密文,接收方在收到密文后,使用自己的私钥解密密文,得到原始消息。
3、数字签名是指签名者对消息进行处理,得到他人无法伪造的一段信息,该信息是签名者对消息的一个“认证”,能够起到确保消息完整性、不可被抵赖等作用。具体来说,使用公钥密码进行数字签名的基本过程为:签名者用自己的私钥对消息进行处理,得到签名,并发送给验证者,验证者使用签名者的公钥来判断签名的真伪。
4、在区块链领域,公钥密码的应用极为重要,几乎所有的区块链平台,都使用基于公钥的数字签名来完成对每笔交易的确认和验证,进而形成区块链的“区块”。此外,公钥密码还被广泛地应用于区块链中的身份认证、密钥协商等场景,以及跨链等区块链典型应用,不少新兴的基于同态加密、安全多方计算、零知识证明等技术的区块链隐私保护方案,也离不开公钥密码学的支撑。
5、随着量子计算技术的快速发展,量子计算机上的grover和shor等攻击方法,破坏了现有部分公钥密码算法的安全性,使得原本难以进行的破解工作能够在多项式时间内完成,从而对基于此类密码算法的区块链产生严重威胁。拥有量子计算机的攻击者能够快速破解所有区块链用户的私钥,伪造用户的签名,然后进行盗取用户数字资产、向区块链中加入虚假信息等恶意操作,最终彻底颠覆区块链的安全性和可信度。基于格、超奇异椭圆曲线、编码等理论的后量子密码算法能够有效抵御量子攻击,避免上述威胁的发生,因此,设计一种能为区块链提供量子安全的防御方法及系统有着积极的现实意义和良好的应用潜力。
技术实现思路
1、针对现有区块链抵御量子攻击安全技术的不足,本发明提供了一种基于后量子密码的区块链安全防御方法及系统,能够为区块链(包含公链、私链和联盟链)以及跨链等区块链应用提供抗量子攻击的加解密、签名与认证、密钥解封装服务。
2、本发明通过如下技术方案实现:
3、本发明首先提供了一种基于后量子密码的区块链安全防御系统,其包括请求处理模块和数据处理模块,
4、所述请求处理模块对来自区块链的数据和用户请求进行分析,检查请求是否有效,请求中的参数是否符合要求,并对非法请求和错误参数进行反馈;
5、所述数据处理模块集成了基于rlwe问题的公钥加密((lyubashevsky,v.,peikert,c.,regev,o.on ideal lattices and learning with errors over rings[a].eurocrypt,lecture notes in computer science[c].2010.1-23)、kyber算法(美国国家标准与技术研究院nist所征集的后量子算法,现已通过第三轮测试https://csrc.nist.gov/publications/detail/nistir/8413/final)、dilithium(美国国家标准与技术研究院nist所征集的后量子算法,现已通过第三轮测试https://csrc.nist.gov/publications/detail/nistir/8413/final)算法和falcon(美国国家标准与技术研究院nist所征集的后量子算法,现已通过第三轮测试https://csrc.nist.gov/publications/detail/nistir/8413/final)算法共计四种公知的后量子算法。
6、所述数据处理模块包括:
7、加解密子模块,对接受的数据进行加解密,其具有加密功能和解密功能;
8、签名及验证子模块,对接受的数据进行签名与验证,其具有签名功能、验证功能;
9、密钥解封装子模块,能够支撑密钥协商,其具有密钥封装功能和密钥解封装功能;
10、密钥生成子模块,根据用户提供的安全参数β和用户选定的后量子算法,生成密钥key。
11、本发明还提供了一种基于所述安全防御系统的区块链安全防御方法,其包括如下步骤:
12、1)区块链网络产生新交易或新区块时,出现待处理的数据,用户选择所需的数据;
13、2)用户调用所述安全防御系统,根据用户提供的安全参数β和用户选定的后量子算法,有密钥生成子模块生成密钥key,
14、3)用户根据自身处理需求,选用加密功能、解密功能、签名功能、验证功能、密钥封装功能和密钥解封装功能中的一种,按所选功能对应的既定的参数格式向安全系统提交数据和请求;
15、4)安全系统的请求处理模块根据用户选择的功能,检查参数信息是否正确,参数正确则传入安全系统的数据处理模块,参数错误则向用户返回错误码;
16、5)安全系统的数据处理模块接收正确的参数,对数据进行处理,
17、6)处理完成后,安全系统按固定的格式返回处理结果。
18、与现有技术相比,本发明具有如下有益效果:
19、(1)本发明针对区块链场景,对四种后量子密码算法,即基于rlwe问题的公钥加密、kyber算法、dilithium算法和falcon算法进行了集成,设计出一种基于后量子密码的区块链安全防御系统,能够为区块链提供抗量子攻击的加解密、签名与验证等功能,有助于提高现有区块链系统的安全性。
20、(2)本发明所提出的基于后量子密码的区块链安全防御系统具有良好的兼容性,能够支持现有的各类主流区块链应用平台,接口统一,易于开发者使用。
1.一种基于后量子密码的区块链安全防御系统,其特征在于包括请求处理模块和数据处理模块,
2.一种基于权利要求1所述安全防御系统的区块链安全防御方法,其特征在于,包括如下步骤:
3.根据权利要求2所述的区块链安全防御方法,其特征在于,所述的步骤2)中用户选定的后量子算法为基于rlwe问题的公钥加密、kyber算法、dilithium算法或falcon算法。
4.根据权利要求1所述的区块链安全防御方法,其特征在于,所述的步骤3)中所述的既定的参数格式如下:
5.根据权利要求1所述的区块链安全防御方法,其特征在于,步骤4)中,所述的检查参数信息是否正确,包括:检查待处理信息m的位数、类型、密钥key的格式、长度是否正确,以及检查用户选定的后量子算法是否支持用于选择的功能。
6.根据权利要求5所述的区块链安全防御方法,其特征在于,
7.根据权利要求4所述的基于后量子密码的区块链安全防御方法,其特征在于,所述的步骤5)具体为: