原文标题:《基于委员会的累积终结性模型》
作者:Vitalik Buterin
本文提出了一种以太坊信标链(Beacon Chain)的拟议替代设计,在未来长期内可以切换到该设计(取代当前计划切换的 CBC)。该替代设计旨在提供一些关键属性:
在正常情况下提供有意义的单槽(single-slot)经济终结性(即类似 Tendermint 的属性):使单槽重组的成本高得多,即使是多数人串通的情况下也能执行,从而降低共识可提取价值 (CEV)
摆脱对 LMD GHOST 分叉选择的严重依赖,避免已知的缺陷以及需要引入复杂的混合分叉选择规则来修复这些缺陷。
可能允许更低的最小存款大小和更高的验证器数量
保存经济终结性最终接近一个非常大的数字(数百万 ETH)的属性
V神:BSV追求最大区块的规模是一个死胡同:8月12日消息,V神刚刚在推特称,BSV的策略(追求最大区块的规模)增加了容量,但代价是使区块链变得越来越难以验证和参与,并且大大增加了集中化风险。因此,从根本上讲,这是一个死胡同。[2020/8/12]
让 CONSENSUS 成为一种异步安全的共识算法(例如 Tendermint、Casper FFG ……)。 我们假设这种共识算法有一些槽(slot)或视图的概念,它在每个固定时间段尝试达成共识。 我们还假设它将一种加权验证器集作为输入(现有的 BFT 共识算法可以轻松修改以添加此属性)。
在下面的设计中,我们修改了 CONSENSUS,以便在每个视图中,需要最终性的集合是不同的。也就是说,CONSENSUS 将一个函数 get_validator_set(view_number: int) -> Map[Validator, int](代表验证器余额的 int)作为输入,而不是验证器集,它可以为新视图生成验证器集。get_validator_set 应该具有以下属性:验证器集根据从一个视图到下一个视图的最大1/r值进行更改,其中 r(例如 r=8192 )是恢复期长度。更正式地说,我们想要:
动态 | V神对ProgPoW提案“先斩后奏”的方式表示批判:以太坊联合创始人Vitalik Buterin对于部分社区成员悄无声息的就表示“批准”了ProgPoW提案这种方式表示批判。实际上该提案仍在讨论中,而社区开发人员也并就为此事达成一致。V神表示,ProgPoW从“唷,这件事已经过去了,很久没有被提起了”突然在1.5个小时里就变成了“天啊,它现在被安排在下一次硬分叉的日程上了???! ”据外媒报道,ETH 1开发人员在上周五突然宣布:“以太坊核心开发者正在推进抗ASIC的ProgPoW,硬分叉升级暂定在7月进行”。然而,其实以太坊核心开发者并未就ProgPoW达成一致意见,也没有暂定硬分叉升级时间。V神表示,他对此事是否能通过持中立态度,只批评这决策的过程。不过在过去两年中,他也曾三、四次微妙地明确疑似表示出他不是很赞成这个提议,当然并没有明确说过“不赞成”。(Trustnodes)[2020/2/25]
声音 | V神:DeFi应用程序是最简单的 因而将获得最多的用户:以太坊联合创始人V神(Vitalik Buterin)在科罗拉多州举行的年度区块链黑客马拉松大会上表示,DeFi应用程序是最简单的,随着其不断发展将,DeFi将获得最多的用户。V神对以太坊2.0启动日期表示了乐观,并补充说,他“认为在过去的几个月里,ETH2.0的发布速度非常快,也很有规律”。然而,V神也注意到,虽然以太坊2.0正在测试和开发中,但新的扩展解决方案(如rollups)正在涌现,可以为以太坊的持续增长提供一些额外的空间。此外,他表示,以太坊可以在没有他的情况下生存,因为他在社区中的大多数辩论中都是徒劳的,以太坊社区有能力解决这些问题。(The Block)[2020/2/17]
其中 丨x丨 返回 x 中值的绝对值之和, diff 返回每个键值的差值(例如 diff({a: 0.1, b:0.2}, {b:0.1, c:0.3}) = {a:0.1,b:0.1,c:-0.3})。
声音 | V神:Libra未能获得商业信誉,也不“中立”:V神(Vitalik Buterin)最近在接受BLOCKTV的采访时表示,任何加密项目和Facebook的数字货币概念之间都没有“明确匹配”。他承认Libra拥有25亿用户是一个主要优势,其他加密货币系统都没有,但Libra未能获得商业信誉,也不具备任何“中立”。此外,他还补充说,这种正确性永远不会从根本上被赋予一个中心化的机构,而其他加密项目则有机会提供。此外,V神表示对Telegram即将推出的区块链感兴趣,但需要考虑区块链空间的实际可能性。[2019/9/17]
在实践中,两个相邻验证器集之间的差异将包括现有验证器泄漏余额,以及以与泄漏余额相等的速率引入新验证器。
请注意,这意味着如果两个终结性的视图数量相差足够远,则这时候可以在不削减的情况下进行双重终结性确定; 这是有意为之,并且该协议以与当今 Casper FFG 处理不活动泄漏的方式相同的方式围绕它工作。
声音 | V神:2016年购买MKR并不难,我大部分钱就是这么来的:今天,V神在推特上回复网友称:“最早在2016年,在公开市场上(即oasisdex)购买MKR是可能的,而且并不难。我知道是因为我大部分的钱就是这么来的。他们当时并未拉高MKR。”[2019/3/31]
我们使用两级分叉选择:
选择 LATEST_FINALIZED_BLOCK
从 LATEST_FINALIZED_BLOCK,应用一些其他叉选择(例如 LMD GHOST)来选择head
共识算法的视图在每个插槽都会被尝试,将基于 get_post_state(LATEST_FINALIZED_BLOCK) 数据的验证器集生成函数作为输入传入。 在视图 i 中,一个有效的提案必须包含从 LATEST_FINALIZED_BLOCK 到插槽 LATEST_FINALIZED_BLOCK.slot + i 处的区块的链。 如果提示的父级是分叉选择的赢家,这时验证者才需要准备并提交提案。
如果 CONSENSUS 在某个视图中成功,则该视图中的提案将成为新的 LATEST_FINALIZED_BLOCK,更改未来轮次的验证器集。 如果失败,它将在下一个槽/视图中进行下一次尝试。
注意:插槽应始终等于当前视图编号加上每个先前验证器集中成功完成的视图编号的总和。
我们有以下处罚:
由共识算法确定的定期削减处罚
不活跃惩罚:如果这条链未能实现终结性,所有未参与的人都会受到惩罚。 此惩罚旨在将 r/2个 插槽后的余额削减一半。
如果一个区块获得终结性,那么要终结确定一个竞争区块,需要发生以下情况之一:
某些委员会被破坏,其中 他们中≥1/3会被削减以对不同的区块实现双重终结性
最近的委员会离线,在 r/3个插槽之后,委员会轮换足够多,以便能够在不削减的情况下使一个不同的区块获得终结性。然而,这是以严重的不活跃惩罚为代价的(≥1/3的攻击者余额)
在任何一种情况下,即使还原一个终结区块也至少需要销毁 DEPOSIT_SIZE * COMMITTEE_SIZE / 3个 ETH。如果我们设置 COMMITTEE_SIZE = 131,072(ETH2 委员会中每个插槽的验证器数量在理论上最大 400 万个验证器限制),则该值为 1,398,101 个ETH。
该方案的其他一些重要属性包括:
验证器的负载将非常稳定,无论存入多少验证器,处理每个插槽的 COMMITTEE_SIZE 交易
验证者的负载会更低,因为当他们没有被要求加入委员会时,他们可以休眠
在不牺牲安全性的情况下,可以允许休眠的验证器快速退出+撤回
如果出于效率原因,我们必须减小 COMMITTEE_SIZE,我们可以进行以下调整:
我们没有选择最新的终结性区块,而是选择作为最长终结性区块链末端的终结区块(但拒绝恢复超过 COMMITTEE_LOOKAHEAD)
get_validator_set 应该只使用来自状态超过 COMMITTEE_LOOKAHEAD 之前的信息
视图编号应该只是插槽编号(这可以更容易地推断出在不同链中使用相同的验证器集尝试达成共识的情况,这只有在可能破坏一些终结性的情况下才会发生)
这保留了上述所有属性,但它也引入了一个新属性:如果一个区块获得多个终结性(即该区块被终结,并且其后代链获得 k-1 个更多终结,总共 k 个影响该区块的顺序终结性),然后恢复该区块需要违反多个委员会的终结性保证。这允许多个委员会的安全级别叠加:一个人需要 COMMITTEE_SIZE * DEPOSIT_SIZE * k / 3 ETH 来恢复k个终结性,最多 k = COMMITTEE_LOOKAHEAD,此时委员会分歧。
还要注意,出于 p2p 子网安全的原因,先行机制无论如何都值得做,所以用它来设计系统可能是一个好主意,如果需要的话,让客户端来决定他们如何处理终极性反转。
请注意,“打破终结性所需的 ETH”数量假设攻击者控制的验证器数量远远超过质押总量的一半(即数百万 ETH); 这个数量是攻击者将失去的。并不是任何拥有 2,730 - 174,762 ETH 的人都可以进入并销毁该 ETH 以逆转单一插槽的终结性。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。