作者|VitalikButerin,以太坊创始人?
翻译|闵敏&阿剑
来源|链得得
对于许多区块链应用来说,免信任性都是最重要的特征之一。
所谓的免信任性,就是应用的正常工作不以特定参与者按特定方式行事为前提,即使他们将来会在利益的驱使下做出意料之外的举动。
区块链应用永远不可能实现完全免信任,但是有一些应用在免信任程度上远远高于另一些项目。如果我们想要朝着信任最小化迈出坚实的步伐,就得先辨别出信任程度的高低。
首先,我个人对信任的定义很简单:信任就是对其他人行为的假设。在疫情爆发前,你不会因为害怕别人突然捅你一刀而与刻意跟他人保持两米的距离。
这就是一种信任:一方面是信任他人不会暴走,另一方面是信任法律制度对违法犯罪行为的约束力。
Terra Classic独立开发团队TerraCVita拟申请币安“行业复苏计划”资金支持:2月24日消息,Terra Classic独立开发团队TerraCVita发推向社区征求意见,希望申请币安的“行业复苏计划”资金支持。目前已获得社区大多数人的同意,Terra Classic验证者BetterLunc也支持这一想法并强调币安一直致力于为DeFi项目提供帮助。
TerraCVita于今年1月完成100万美元融资,而币安则是在去年11月宣布推出规模达10亿美元的“行业复苏计划”。(The Crypto Basic)[2023/2/24 12:27:54]
当你运行其他人写的一段代码时,你相信他们是诚实的,至少有足够多的人对这段代码进行过审计,知道里面没有bug。
不自己种菜也是一种信任:相信会有足够多的人为了赚钱而生产粮食。你可以信任不同群体,信任的类型也多种多样。
安全团队:Vitalik出售25万亿枚SHIT币,价值约33000美元:金色财经消息,据派盾(PeckShield)监测数据显示,Vitalik.eth的地址0xd8da6b...7aa96045显示,25万亿枚SHIT币在Uniswap上被出售,价值约33000美元。[2022/8/4 12:01:49]
为了分析区块链协议,我会将信任拆解成四个维度:
你需要多少人如你预期的那样行事?
总参与人数有多少?
需要这些人出于什么动机如你预期的那样行事?需要他们是利他主义者,还是唯利是图者?是否需要避免他们之间产生协同?
如果这些假设被打破了,对系统的破坏有多大?
现在,先让我们聚焦于前两个问题。通过下图,我们可以更加直观地看出:
以太坊创始人Vitalik购买价值50ETH的UBI并进行销毁:10月20日消息,据链上数据,以太坊创始人Vitalik Buterin钱包购买了价值50ETH的UBI并进行销毁。据悉,Proof of Humanity 是引入人性论证的 DAO,使用社交验证的登记系统,公开参与、真正民主的一人一票治理系统,$UBI是Proof of Humanity的代币。[2021/10/20 20:42:02]
动态 | 加密项目Vite与TROY达成战略合作关系:自定义区块链应用生态系统Vite今日宣布与加密经纪商Troy Trade(TROY)达成战略合作关系。通过此次合作,Vite成为TROY推出的“全球生态社区计划(Global Ecological Community Program)”的第十一位成员,而TROY也将加入Vite网络成为区块生产者。(Crypto Ninjas)[2020/1/2]
绿色越深表示越健康
让我们详细分析以下几种情况:
1:1:整个系统只有一个参与者。如果这名参与者确实如你预期的那样行事,系统就会正常运行。这就是传统的「中心化」模型,也是我们所要超越的模型。
N:N:「反乌托邦」世界。系统中的所有参与者都要如你预期的那样行事,系统才能正常运行,如果有任意参与者失败,那也没有备份方案。
声音 | V神:邮箱Vitalik@butterin.me不是我的:以太坊创始人V神(Vitalik Buterin)发推表示,“Vitalik@butterin.me不是我的,任何由这个邮箱发出的邮件都是子所为。我的所有邮箱地址都是.com或者.org这两个域名。”[2018/11/1]
N/2:N:这是区块链的运作方式——如果大部分矿工是诚实的,区块链就能正常运作。要注意的是,N越大,N/2就越有价值。相比只由少量矿工/验证者控制的区块链,矿工/验证者广泛分布的网络有趣得多。尽管如此,我们依然想要获得更高的安全性,因为还有51%攻击的问题存在。
1:N:在众多参与者中,只要有一名参与者如你预期的那样行事,整个系统就能正常运行。任何基于欺诈证明的系统都属于这一类。可信设置也是如此,不过在可信设置中,N通常较小。要注意的是,N越大越好!
极少数:?N:在众多参与者中,只要有达到固定人数的小部分参与者如你预期的那样行事,整个系统就能正常运行。数据可用性检查就属于这一类。
0:N:系统无需依赖外部参与者即可正常运行。自我验证区块有效性就属于这一类。
尽管除「0:N」之外的模型都是建立在「信任」基础上的,但是这些模型之间存在巨大差异!
相信某个特定的人会如你所预期的那样行事,和相信任何一个人都会如你所预期的那样行事,二者之间有着天壤之别。
相比「N/2:N」和「1:1」,「1:N」与「0:N」更为接近。或许有人会觉得「1:N」模型与「1:1」模型很像,因为这两种系统都依赖一名参与者,但实际上它们之间迥然不同:在「1:N」系统中,如果这名参与者消失或作恶,换一名参与者即可;如果是「1:1」系统,你就只能束手无策。
尤其要注意的是,即使是你正在运行的软件,其正确性通常也取决于「极少数:N」信任模型,以此确保软件代码出现bug时,会有人及时发现。
在了解这一事实后,你就会发现,努力从「1:N」模型转向「0:N」模型如同为敞开窗户的房子安装防盗门。
另一个重要的区别在于,如果你的信任假设被打破,对系统的破坏有多大?在区块链上,最常见的两种故障类型是活性故障和安全性故障。
活性故障就是你暂时无法进行操作。安全性故障就是出现了系统想要预防的情况。
以下列举了一些区块链Layer2协议所采用的信任模型。我使用「smallN」来指代layer2系统本身的参与者集合,「bigN」来指代底层区块链的参与者。
我的假设是Layer2的社区总是小于其底层区块链的社区。另外,我所谓的「活性故障」特指代币长时间卡住的情况。无法使用系统但能即时提款的情况不算作活性故障。
Channel类:使用「1:1」信任模型来确保活性,「N/2:bigN」模型来确保安全性。
Plasma:使用「1:1」模型来确保活性,「N/2:bigN」模型来确保安全性。
Plasma:使用「N/2:smallN」模型来确保活性,「N/2:bigN」模型来确保安全性。
OptimisticRollup:使用「1:1」或「N/2:smallN」模型来确保活性,「N/2:bigN」模型来确保安全性。
ZKRollup:使用「1:smallN」模型来确保活性;不存在安全性故障风险。
ZKRollup:不存在活性故障风险和安全性故障风险。
最后是关于激励的问题:为了达到预期的效果,你所信任的参与者需要非常利他主义,一般利他主义,还是理性主义?
默认情况下,「欺诈证明」需要参与者是利他主义的,但是程度如何取决于计算的复杂性,而且有很多方法可以修改规则,使之变得理性。
如果我们增加一种方式来支付服务费,那么帮助他人从ZKRollup上取款的行为就是理性的,因此没必要担心无法退出Rollup的问题。
与此同时,如果整个社区都同意不接受通过51%攻击创建的区块链,就可以减轻其它系统的风险。
结论:如果你听到有人说某个系统「依赖于信任」,一定要问清楚!这个系统是「1:1」模型、「1:N」模型还是「N/2:N」模型?这个系统需要参与者是利他主义还是理性主义?
如果是利他主义,参与者需要付出多大代价?如果假设被打破,那么你需要等待多久才能取回自己的资金?几个小时?几天?还是永远无法取回?搞清楚了这些问题,你才能决定要不要使用这个系统。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。