注册
关闭
区块链大帝

区块链大帝

发布于 2020-01-22 阅读数 2493

区块链系统治理一览:如何设计出确保区块链长期发展的治理机制?

来源|Medium

编译|头等仓(First.VIP)

 

区块链代码库每过一段时间就会更新一次。为了更新区块链代码,各种利益群体,如用户、核心开发者和全节点提供商(在比特币系统中也被称为矿工),需要就哪些需保留、哪些需更改达成共识。但这并非易事,因为这些利益相关者之间通常存在利益冲突。为了解决这些问题,每个区块链项目都有一个治理系统来协调参与者之间的冲突,并使他们的动机与区块链系统的良性发展保持一致。

一般来说,区块链治理系统分为两种:

一种是像比特币和以太坊这样的链下治理系统;另一种则是像Cosmos和DFINITY这样的链上治理系统。这两种的区别就在于投票是否在区块链账本上进行及记录。

在链下治理系统中,核心开发者可以通过正式改进提案(如比特币改进提案,以太坊改进提案)向官方存储库(如Github)提交协议更新。用户和全节点提供商可以在社区论坛和社交媒体(如slack channel、Telegram和Twitter)上发表意见。如果大多数利益群体都同意协议更新,区块链协议就会进行代码更改。如果他们无法达成共识,那么核心开发者可以撤消提案,或仍然实施协议更改。但后者通常会导致硬分叉(如2016年因硬分叉诞生的以太坊及以太坊经典,以及2017年的比特币及比特币现金),因为某些全节点提供商可能不会采用相应的协议更改。由于核心开发者和全节点提供商在决策制定方面拥有的权力比普通用户大得多,因此链下治理系统常因违背去中心化精神而备受人们指责。

近年来,随着PoS区块链项目的发展,一种更加去中心化的治理形式——链上治理已渐渐开始崭露头角。PoS项目通常需要抵押代币来获得投票权。因此,用户可以在系统中抵押源生代币,并获得协议更新的投票权。与链下治理系统的不确定性相比,链上治理系统的决策周转时间更短。此外,链上治理体系更加透明,投票规则是预先设定好的,并提前告知公众。决策制定不受中央实体控制或插手。此外,由于投票规则已嵌入系统代码中,因此协议更新会在提案通过后自动实施,这在很大程度上能够阻止硬分叉的发生。

以下将从更深的层次来探讨链上治理系统的典型设计问题。

 

链上治理设计

 

可以提交什么提案?

提案可以是任意相关主题,如冻结被黑客窃取的代币、更改参数、惩罚恶意全节点提供商等。

如何提交提案?

要提交提案,需至少抵押治理系统所需的最低代币数。为了鼓励高质量的提案,若提案被采纳,抵押代币将返还,还可获得额外奖励(奖励可能来自新铸代币或基金会捐款)。若提案未被采纳,抵押代币将返还,但无额外奖励。如果提案被认为是垃圾提案,那么抵押代币将被扣减。

哪些提案可优先进入投票阶段?

用户可以通过抵押代币来支持各种提案。获得最多抵押代币的提案就可优先投票。在通过提案后,代币奖励将分配给提案发起者(如50%)和支持者(如50%,与抵押代币数量成比例)。请注意,主题相关性较低的提案吸引的支持者较少,投票顺序也会靠后。由于抵押代币只有在投票结束后才能归还给持有者,因此提案发起者和支持者将面临预存代币的机会成本。不过这样的设计可阻止垃圾提案泛滥。或者,系统可以设置提案达到投票阶段所需的最低抵押代币数量(类似于“我们民众(We the People)”的白宫请愿网站)。

如何获得投票权并维护投票隐私?

为了在治理系统中获得投票权,用户需要将其代币在系统中抵押一段时间。这样就会关系到用户的切身利益,因而激励他们进行理性投票。同态加密技术是保护投票隐私的主流方法之一。由于投票经过加密,因此只有拥有私钥的选民才能查看自己的投票。所有选票将在投票结束后进行汇总和统计。只有最终结果才会被解密并向大家公开。

投票权/奖励如何计算?

投票权随着抵押代币数量和抵押周期的增加而增加。选民只有参与投票才能获得代币奖励。如果代币持有者不进行投票,仅抵押代币并不会产生任何收益。投票奖励为选民积极参与治理提供了激励。

如何委托投票?

由于投票耗时耗力,并且需要某些领域的专业知识,所以选民可以将选票委托给其他人(如密码学家、经济学家、主要意见领袖、开发者、基金会等),委托可随时撤销(所谓的流动民主)。

谁可以投票?

普通投票主体:任何在系统中抵押代币的人都可以投票或委托投票。

随机投票主体:为每项提案随机选择一定比例的选民(如10%)。这种设计便于多项投票同时进行(可扩展的解决方案)。由于投票主体小于普通投票主体,因此每一票对最终结果的影响更大。因此被选中的选民更有动力投票,以及谨慎投票。但此缺陷就在于,少数选民易相互勾结。因此,选民选择的随机性是其成功的关键。

一方面,选民数量应尽可能的少,以减少被选选民的投票成本(比如研究提案所花费的时间和资源)。而另一方面,选民又应尽可能的多,这样才能确保投票结果更具代表性,并符合多数代币持有者的利益。降低意外结果概率的一种方法是采用评估投票。如果投票结果接近(如在45%-55%的范围内),系统将随机选择另一批选民,如让倍数为5的选民加入第二轮投票。最终结果则取决于这两轮投票。

如何解决投票权中心化的问题?

在现实投票中,富豪们可以通过资助其偏爱的候选人/傀儡,以及资助其竞选活动来操纵选举。一人一票的机制极易受到这种金钱效应的影响。但在新兴技术面前,过去几个世纪设计的现行政治制度已逐渐显示出其劣势。剑桥分析丑闻就是一个很好的例子,它证明了社交媒体用户可被利用以影响投票结果。与现实生活中的一人一票制相比,在区块链治理系统中,持币大户可以通过一票一代币的方式购买大量代币,从而更容易地将投票结果扭转为自己喜欢的方向。

使投票权更加去中心化的第一种方法是设置灵活的锁定期。用户可以将其代币锁定更长的时间以获得更多的投票权。比如将10个代币锁定10个月的用户可以拥有与将100个代币锁定1个月的用户(持币大户)相同的投票权。较长的锁定期意味着选民的切身利益更大,因此他们比那些锁定期较短的选民更关心系统的长期发展。

第二种方法是用一帐户一票制取代一代币一票制。选民可以通过填写政府发放的身份证信息来注册投票帐户。已注册用户拥有的投票权是未注册用户的10倍。也就是说,用户仍然可以选择匿名投票,不注册帐户。但与注册帐户相比,投票权则大打折扣。该系统使用零知识证明技术,以防止用户个人数据被滥用。投票权随帐户中锁定的代币数量非线性增加。比如,要获得一个单位的投票权,选民需要在帐户中锁定一个代币。要获得10个单位的投票权,选民需要锁定10个以上的代币(例如100个代币对应10个单位的投票权,即二次投票)。这种设计降低了持币大户的投票权。

比如说,持币大户可以将其100个代币锁定在他的已注册帐户中,并获得10个单位的投票权(由于凹形投票权,假设为平方根)。或者他可以创建100个未注册帐户,每个帐户锁定1个代币,但也仅获得10个单位的投票权(未注册帐户的投票权减少10倍)。与他在一代币一票机制中获得的100单位投票权相比,持币大户的投票权在这种机制下受到很大限制。

链上投票的隐私安全问题

环签名

可链接环签名是目前研究最广泛的匿名电子投票加密原语之一。Rivest、Shamir和Tauman 在2001年提出了环签名,后来又增加了一次性可链接性作为改进方案。

数字签名通常假定参与方可通过公钥/密钥对进行识别。环签名方案允许隐藏在随机人群(或一个公钥环)中的任意签名者在不透露环中哪一个公钥生成签名的情况下生成环签名。因此,它为真正的签名者提供了匿名保护。但由于签名信息是公开的,因此该方案不具有投票保密性。

由于环签名隐藏了选民的身份,因此选民可能会多次给某一位候选人投票,以提高自己支持的候选人的获胜几率。一次性可链接性旨在确保只要一个环中的某一密钥被使用了两次,重复的签名都会被链接,从而被判定为非法投票。

一次性可链接环签名可由一种特殊零知识证明来构造,即成员证明。零知识证明是一种协议,它使验证者能够在无需透露语句本身以外其他信息的情况下验证语句的正确性。打个比方,零知识范围证明方案使验证者能够证明某个秘密整数属于某一范围内(比如0~1),但不透露它具体是哪个整数。也就是说,验证者在不知道该秘密整数是0还是1的情况下,读取证明后可确信该秘密整数是二进制的。

盲签名

另一个密切相关的原语是盲签名,它需要由组管理员控制的注册阶段。投票需要选民与管理员之间进行交互,以便选民可以获得管理员发出的不可追踪空白选票,并以加密/盲形式进行投票。盲签名确保了选民的隐私性、投票保密性和一次性可追溯性。但选民需要使用阈值盲签名方案来降低组管理员在区块链设置中的集中权力。(注:此处的“阈值”是指使用阈值加密技术将单个组管理员替换为多个管理员,只要大多数管理员诚实行事,就可以保证选民的匿名性和投票的保密性。)

阈值同态加密

加密方案将纯文本消息转换为随机字符串以保护其保密性。消息加密后,若要对底层消息进行任何操作(如求和),必须先解密密文。但是,在某些应用场景中,可能会存在不想让操作执行人知悉底层消息的情况。例如,计数员只需要知道各选票总数,而不需要知道每张选票投给了谁。同态加密是一种特殊加密机制,它允许任何有权访问密文的人以同态的方式执行所需的操作,这就意味着对底层消息的操作可以在无需解密的情况下执行。

如果使用同态加密对每个选民对特定候选人或声明的投票进行加密,则计数员将能够以同态方式加密最终投票数,而无需对每个选票的密文进行解密。

但要注意,恶意选民可以通过加密一个较大正数(或负数)来代替二进制投票,从而增加(或减少)自身支持的候选人(或其竞争对手)获胜(或失败)的机会。因此,基于同态加密的电子投票通常使用零知识范围证明,它可以证明秘密数字是二进制的,但不透露确切投票内容。但还存在另一个问题,拥有同态加密方案私钥的任何实体都能够解密所有投票。因此还需要一种阈值同态解密机制将解密权分散到各实体手中。

Mix(混合)网络

Mix网络使用多个独立服务器对输入的加密选票进行洗牌,并输出明文选票。但必须假定这些混合服务器中至少有一个诚实执行了秘密排列,以保证选民的匿名性。

更具体地说,Mix网络通常采用分层加密方式,在一系列公钥下对原始投票进行加密,每个公钥对应于一个中间混合节点。每个中间混合节点会收到多个密文,并使用其秘钥去除一层加密,并将消息随机排列后发送给下一个节点。因此,只要至少有一个混合节点诚实行事,就可以在一定程度上保证选民的匿名性。但是,由于所有投票均以明文形式发送给计数员,因此Mix网络无法保证投票的保密性。

下表展示了这些技术的利弊:

区块链系统治理一览:如何设计出确保区块链长期发展的治理机制?

探讨问题

区块链项目是随着时间的推移而不断演变的复杂系统。它们受规则和界定规则更改方式的规则所支配。在设计治理规则时,需要牢记以下基本问题:如何界定有效选民及其投票权?谁可以发起提案?什么提案有资格进入投票阶段?法定人数是多少?如何界定投票结果?如何更改投票规则?

归根结底,问题都可以归结为:如何设计一个能够确保区块链项目长期繁荣发展的治理系统?而成功的秘诀就在于保证大多数参与者的利益与项目的利益保持一致。

  • 0
区块链大帝
区块链大帝

0 条评论