技术领域
[0001] 本发明涉及网络安全防御技术领域,具体涉及一种面向DPoS区块链投票治理方法及系统。
相关背景技术
[0002] DPoS(Delegated Proof of Stake)共识协议是一种基于投票选举的共识机制,与其他选举型共识机制相比,DPoS能够显著提升选举效率,因此越来越多的区块链系统采用了该协议。DPoS区块链基于代币投票的治理通过代币或者代币的持有量决定投票结果,所以投票机制的不完善可能会使代币持有者对区块链系统的投票产生较大影响,从而对系统安全性构成威胁。区块链恶意收购是指组织,企业或个人通过不正当的手段获取或控制区块链中的大部分权利,达到操纵区块链网络,获得利益,破坏区块链安全性的行为。
[0003] 对DPoS区块链场景下的基于代币的投票治理和恶意收购进行建模有助于优化投票系统设计,作为增强区块链安全性的研究基础。
[0004] 在论文《A systematic literature review on blockchain governance》中,作者进行了系统的文献综述,综合了区块链治理的定义、动机、对象、流程、相关者和机制,但是缺乏对区块链治理的正式模型。在论文《Modeling voters in multi‑winner approval voting》中,作者研究了投票单获胜者和多获胜者投票中的行为,并使用从Mechanical Turk获得的行为数据来预测具有不同程度不确定性的场景,提出了一种新颖的模型,该模型考虑了获胜集和人类认知约束,并证明了该模型能够更有效地捕捉多获胜者投票场景中的真实行为,但该模型的设计相对较复杂。
具体实施方式
[0032] 下面详细叙述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0033] 本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。
[0034] 本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件和/或它们的组。
[0035] 为便于理解本发明,下面结合附图以具体实施例对本发明作进一步解释说明,且具体实施例并不构成对本发明实施例的限定。
[0036] 本领域技术人员应该理解,附图只是实施例的示意图,附图中的部件并不一定是实施本发明所必须的。
[0037] 实施例1
[0038] 本实施例1中,首先提供了一种面向DPoS区块链投票治理系统,包括:质押模块,用于投票者质押代币,并通过质押功能获得对应的投票权;在质押后的一段时间中,投票者选择是否使用解锁功能解除质押;投票模块,用于将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照;根据投票者、投票权快照,确定投票委员会;治理模块,用于每个发给投票委员会的提案获得的明确批准次数大于预设的阈值,则该提案获得通过。
[0039] 本实施例1中,利用上述的系统,实现了面向DPoS区块链投票治理方法,包括:投票者质押代币,并通过质押功能获得对应的投票权;在质押后的一段时间中,投票者选择是否使用解锁功能解除质押;将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照;根据投票者、投票权快照,确定投票委员会;每个发给投票委员会的提案获得的明确批准次数大于预设的阈值,则该提案获得通过。
[0040] 对于流动民主模式,根据投票者、投票权快照,确定投票委员会,包括:将区块链的授权情况定义为d=(d1,d2,d3,...,dm),其中di=j表示选民i∈M将她的全部投票权委托给*选民j∈M;给定一个包含<投票者M,投票权快照p,授权情况d>的三元组;确定一对投票者M*
与投票权快照p ,其中M是投票者的集合,p是选民的投票权快照,d是选民的授权情况,*
是一组投票者,p是一组聚合的投票权概况。
[0041] 对于许可投票模式,根据投票者、投票权快照,确定投票委员会,包括:为投票者M**中的所有投票者定义了一个投票配置文件V={Vi|i∈M},其中投票者vi选择候选人C的一* *
个子集Vi进行投票,使|Vi|≤v;给定一个包含<投票者M,投票权快照p ,投票配置文件V,候选人C,委员会规模参数n>的五元组;确定一个委员会 使|W|=n和社区选择分数最大化,其中 为总投票权。
[0042] 对于累积投票模式,根据投票者、投票权快照,确定投票委员会,包括:将M*中所有*投票者的投票权分布定义为P={Pi|i∈M},其中 这样由投
票者i选择的不同候选人cj可以从投票者i处获得不同数量的投票权 给定一个包含<投* *
票者M ,投票权快照p,投票配置文件V,投票权分布P,候选人C,委员会规模参数n>的六元组;确定一个委员会 使|W|=n和社区选择分数 最大化。
[0043] 每个发给投票委员会的提案进行批准的过程中,对于恶意收购的情况,定义控制<投票者Ma,委员会Ca,投票权pa>的攻击者A;定义在委员会中分配投票权ζapa的策略sa={pa,i|ci∈Ca,∑ipa,i≤ζapa},其中ζa为权力放大系数;使(v,n)‑投票阶段的委员会W输出满足|W∩Ca|≥t。
[0044] 将在区块链经历恶意收购后的一段时间内,执行授权/投票交易修改其所选候选人集的社区成员划分为抵抗者,并将保留其选定候选人集的社区成员划分为非抵抗者;将热度最高的发帖的作者确定为领导者,并将领导者所选择的候选人集合表示为Cl;选取满足|Cr∩Cl|≥1条件的一组候选人Cr作为共同抵抗者,满足|Cr∩Cl|=0条件的候选人作为独立抵抗者;定义控制投票权pr的共同抵抗者R;定义在领导者选择的一组候选人Cl中分配投票权ζrpr的策略sr={pr,i|ci∈Cl,∑ipr,i≤ζrpr},其中ζr为权力放大系数;使(v,n)‑投票阶段的委员会W输出满足|W∩Ca|<t。
[0045] 实施例2
[0046] 本实施例2中,提出的DPoS区块链场景下的基于代币的投票治理模型包含三个关键阶段,分别是:质押阶段,(v,n)‑投票阶段,(t,n)‑治理阶段。
[0047] 其次,本实施例2中,还提出针对治理阶段的恶意收购模型的参与者包含攻击者和委员会,其中委员会又可被划分为:抵抗者与不抵抗者,抵抗者可以被继续细分为共同抵抗者和独立抵抗者,其中,共同抵抗者包含领导者与一组追随者。
[0048] 对于基于代币的投票治理模型,该方法主要包括三个阶段的流程,分别是S1质押建模阶段,S2(v,n)‑投票建模阶段,S3(t,n)‑治理建模阶段。首先考虑一组投票者M={1,2,3...,m}和一组候选人C={c1,c2,c3,...,ck},基于此基础进行建模。
[0049] 每个阶段具体描述如下:
[0050] 1)所述步骤S1阶段具体包括以下步骤:
[0051] S11:投票者i质押代币,并通过质押功能pi=S(coini,λ)获得对应的投票权,其中coini代表投票者的代币,λ代表每一枚代币能获得多少投票权(参数λ通常在不同的DPoS区块链中有所不同)。
[0052] S12:在质押后的一段时间中,投票者选择是否使用解锁功能coini=S‑1(pi,λ)解除质押。
[0053] S13:将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照p={p1.p2,p3,...,pm}。
[0054] 2)所述步骤S2阶段具体包括流动民主,许可投票,以及累计投票三种不同模式,具体包括以下步骤:
[0055] S21(流动民主):将区块链的授权情况定义为d=(d1,d2,d3,...,dm),其中di=j表示选民i∈M将她的全部投票权委托给选民j∈M。
[0056] S22(流动民主):给定一个包含<投票者M,投票权快照p,授权情况d>的三元组。
[0057] S23(流动民主):确定一对投票者M*与投票权快照p*,其中M是投票者的集合,p是选*民的投票权快照,d是选民的授权情况, 是一组投票者,p是一组聚合的投票权概况。
[0058] S24(许可投票):为投票者M*中的所有投票者定义了一个投票配置文件V={Vi|i∈*M},其中投票者vi选择候选人C的一个子集Vi进行投票,使|Vi|≤v。
[0059] S25(许可投票):给定一个包含<投票者M*,投票权快照p*,投票配置文件V,候选人C,委员会规模参数n>的五元组。
[0060] S26(许可投票):确定一个委员会 使|W|=n和社区选择分数最大化,其中 为总投票权。
[0061] S27(累积投票):将M*中所有投票者的投票权分布定义为P={Pi|i∈M*},其中这样由投票者i选择的不同候选人cj可以从投票者i处获得不同数量的投票权
[0062] S28(累积投票):给定一个包含<投票者M*,投票权快照p*,投票配置文件V,投票权分布P,候选人C,委员会规模参数n>的六元组。
[0063] S29(累积投票):确定一个委员会 使|W|=n和社区选择分数最大化。
[0064] 3)所述步骤S3阶段具体包括以下步骤:
[0065] S31:每个发给委员会W的提案都必须获得至少t次的明确批准才能获得通过。
[0066] 对于恶意收购模型,该方法主要包括两方面的流程,分别是S1攻击建模阶段,S2抵抗建模阶段,每个阶段具体描述如下:
[0067] 1)所述步骤S1阶段具体包括以下步骤:
[0068] S11:定义控制<投票者Ma,委员会Ca,投票权pa>的攻击者A。
[0069] S12:定义在委员会中分配投票权ζapa的策略sa={pa,i|ci∈Ca,∑ipa,i≤ζapa},其中ζa为权力放大系数。
[0070] S13:使(v,n)‑投票阶段的委员会W输出满足|W∩Ca|≥t。
[0071] 2)所述步骤S2阶段具体包括以下步骤:
[0072] S21:将在区块链经历恶意收购后的短时间内,执行授权/投票交易修改其所选候选人集的社区成员划分为抵抗者,并将保留其选定候选人集的社区成员划分为非抵抗者。
[0073] S22:在S11分类的基础上,将热度最高的发帖的作者确定为领导者,并将领导者所选择的候选人集合表示为Cl。
[0074] S23:选取满足|Cr∩Cl|≥1条件的一组候选人Cr作为共同抵抗者,满足|Cr∩Cl|=0条件的候选人作为独立抵抗者。
[0075] S24:定义控制投票权pr的共同抵抗者R。
[0076] S25:定义在领导者选择的一组候选人Cl中分配投票权ζrpr的策略sr={pr,i|ci∈Cl,∑ipr,i≤ζrpr},其中ζr为权力放大系数。
[0077] S26:使(v,n)‑投票阶段的委员会W输出满足|W∩Ca|<t。
[0078] 实施例3
[0079] 本实施例3提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现如上所述的面向DPoS区块链投票治理方法,该方法包括:
[0080] 投票者质押代币,并通过质押功能获得对应的投票权;在质押后的一段时间中,投票者选择是否使用解锁功能解除质押;
[0081] 将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照;
[0082] 根据投票者、投票权快照,确定投票委员会;
[0083] 每个发给投票委员会的提案获得的明确批准次数大于预设的阈值,则该提案获得通过。
[0084] 实施例4
[0085] 本实施例4提供一种计算机设备,包括存储器和处理器,所述处理器和所述存储器相互通信,所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令执行面向DPoS区块链投票治理方法,该方法包括:
[0086] 投票者质押代币,并通过质押功能获得对应的投票权;在质押后的一段时间中,投票者选择是否使用解锁功能解除质押;
[0087] 将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照;
[0088] 根据投票者、投票权快照,确定投票委员会;
[0089] 每个发给投票委员会的提案获得的明确批准次数大于预设的阈值,则该提案获得通过。
[0090] 实施例5
[0091] 本实施例5提供一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现面向DPoS区块链投票治理方法的指令,该方法包括:
[0092] 投票者质押代币,并通过质押功能获得对应的投票权;在质押后的一段时间中,投票者选择是否使用解锁功能解除质押;
[0093] 将质押和解除质押导致的动态投票权变化表示为给定时间点的一组投票者的投票权快照;
[0094] 根据投票者、投票权快照,确定投票委员会;
[0095] 每个发给投票委员会的提案获得的明确批准次数大于预设的阈值,则该提案获得通过。
[0096] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产品的形式。
[0097] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0098] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0099] 上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明公开的技术方案的基础上,本领域技术人员在不需要付出创造性劳动即可做出的各种修改或变形,都应涵盖在本发明的保护范围之内。