本申请的实施例涉及数据安全共享,特别涉及一种基于门限密钥共享与椭圆加密的委托权益共识方法。
背景技术:
1、dpos(delegated proof of stake,股权授权证明机制)是一种区块链的共识算法,该算法由区块链技术领域的先驱之一bitshares项目的创始人dan larimer提出并实现的。bitshares是一个早期的区块链项目,旨在提供去中心化的金融服务,提高区块链的交易处理速度和吞吐量。相较于pos(proof of stake,权益证明共识算法)而言,dpos通过选举少量的选举节点来验证交易和生成区块,能够更快地达成共识,提高了网络的交易处理速度,保证交易的实时性,由于其共识周期短,因此可以更快生成新区块,使其在高吞吐量的场景下具有更好的性能。dpos算法设计和实现灵活度高,更容易进行升级和扩展,可以适应不同的需求和新的技术发展,并能够抵御各种外来攻击。
2、然而,dpos算法存在选举节点容易受到攻击而导致共识失败的问题,以及多次选举节点导致资源消耗非常大的问题。
技术实现思路
1、有鉴于此,本申请的实施例提出了一种基于门限密钥共享与椭圆加密的委托权益共识方法,有效解决了节点容易受到攻击的问题,同时提高了代表节点的复用率,减少了选举代表节点的次数,提高了系统效率,并且有效保证了共识密文的安全性。
2、第一方面,本申请的实施例提出了一种基于门限密钥共享与椭圆加密的委托权益共识方法,应用于区块链系统,所述区块链系统由监管系统和若干个节点组成,所述方法包括以下步骤:监管系统在所有节点中选举出n个代表节点;其中,n为大于1的整数;监管系统生成椭圆曲线,确定椭圆曲线的基点,生成门限值和秘密值,再选择n+1个两两互质的整数,随后基于椭圆曲线、基点、秘密值和选择的整数生成参数集,最后公开本次共识信息和生成的参数集;代表节点在收到参数集后,基于自身持有的私有密钥和收到的参数集,生成自身对应的公有密钥,并将自身对应的公有密钥发送给监管系统;监管系统在收到各代表节点发送的公有密钥后,将秘密值划分为n个共享密钥,为各代表节点构建对应的子秘密值,分别利用各代表节点对应的公有密钥对各子秘密值进行加密生成中间加密信息,并将各中间加密信息发送给对应的代表节点;代表节点在收到中间加密信息后,基于本次共识信息确认是否同意本次共识,若确认同意本次共识,则利用自身持有的私有密钥对收到的中间加密信息进行解密,解出对应的子秘密值并回传给监管系统,反之,则拒绝响应;监管系统判断回收的子秘密值的数量是否不小于门限值,若确认回收的子秘密值的数量不小于门限值,则基于回收的子秘密值进行秘密重构,反之,则不通过本次共识;监管系统基于秘密值对秘密重构得到的重构值进行秘密验证,若验证成功,则通过本次共识,反之,则不通过本次共识。
3、本申请的实施例提出的一种基于门限密钥共享与椭圆加密的委托权益共识方法,针对dpos算法存在的缺陷,引入了门限密钥共享算法和椭圆加密算法。门限密钥共享算法作为一种秘密共享方法,基于中国剩余定理,将秘密分散到多个份额中,这些份额可以在一组合格的参与者之间共享,从而使得只有在达到一定数量的份额时才能还原秘密,其基于大整数分解问题和离散对数问题的困难性假设,提供了较高的安全性,此外,门限密钥共享算法的灵活性很强,可以根据需要调整门限值,从而适应不同的应用场景和安全需求,特别适用于构建安全、可靠的分布式系统,引入门限密钥共享算法后的区块链系统,通过门限特性提高了节点复用度,减少了选举代表节点的次数,能够有效防止单点攻击。椭圆加密算法是一种非对称加密算法,其利用了由椭圆曲线上有理点构成的阿贝尔加法群的椭圆离散对数的计算困难性,被广泛应用于区块链系统,与传统的加密算法相比,椭圆加密算法在提供相同安全级别的情况下使用更短的密钥长度,因此具有更小的计算和存储开销,引入椭圆加密算法后的区块链系统,能够采用椭圆加密的方式提高了区块链系统的安全性,有效保证共识密文的安全性,降低了工业区块链场景下的通信开销,降低了共享时延,提升了系统吞吐量。
4、第二方面,本申请的实施例提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现如上述第一方面中所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法。
5、可以理解的是,上述第二方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
1.一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,应用于区块链系统,区块链系统由监管系统和若干个节点组成,所述方法包括:
2.根据权利要求1所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统生成的椭圆曲线记为e(a,b),椭圆曲线e(a,b)的基点记为g,生成的门限值记为t,生成的秘密值记为s,选择的n+1个两两互质的整数包括第一参考值p和与各代表节点对应的整数{d1,d2,…,di,…,dn};
3.根据权利要求2所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,代表节点在收到参数集后,基于自身持有的私有密钥和收到的参数集,生成自身对应的公有密钥,通过以下公式实现:
4.根据权利要求3所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统为第i个代表节点构建的子秘密值表示为(di,si),监管系统为第i个代表节点构建的子秘密值(di,si)中的si,通过以下公式构建得到:
5.根据权利要求4所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,代表节点利用自身持有的私有密钥对收到的中间加密信息进行解密,解出对应的子秘密值,通过以下公式实现:
6.根据权利要求5所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统基于回收的子秘密值进行秘密重构,包括:
7.根据权利要求6所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统基于秘密值对秘密重构得到的重构值进行秘密验证,若验证成功,则通过本次共识,反之,则不通过本次共识,包括:
8.根据权利要求1至7中任一项所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统在通过本次共识之后,将本次共识信息写入区块链系统,并允许区块链系统中的任意节点进行验证和记录。
9.根据权利要求1至7中任一项所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法,其特征在于,监管系统生成的椭圆曲线e(a,b)满足如下条件:
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至9中任一项所述的一种基于门限密钥共享与椭圆加密的委托权益共识方法。