原文标题:《一位比特币开发者对Libra的思考》
作者:JamesonLopp
编译:BixinWallet
我深入研究了26页技术文档,它描述了用作Libra币平台的协议。它有着令人印象深刻的53位作者!
摘要
Libra协议允许来自不同的权威机构一组副本——被称为验证者——来共同维护可编程资源数据库。
好吧,这里没有文字上的装腔作势——该系统将由一系列权威机构以自上而下的方式进行控制。但请注意,它表示数据库是针对「可编程资源」而不仅仅是数字货币。
这些资源将由公钥加密认证过的不同用户帐户拥有,并遵守这些资源的开发者所指定的自定义规则。
使用诸如「资源」之类的通用词语使我怀疑这远远不止是一个稳定币。
交易基于以一种名为Move的新编程语言预定义的的智能合约。我们使用Move来定义区块链的核心机制,例如货币和验证者成员资格
好的,现在它变得有趣了。使用定制智能合约的语言会导致很多问题,关于语言的功能有多丰富,以及——作为结果——系统对抗敌对合约也有多健壮。对开发者的友好性以及Libra如何保护智能合约开发人员免于陷入困境,也会有一些问题。
这些核心机制使得创建一种独特的治理机制成为可能,该机制在早期会基于现有制度的稳定性和声誉,但随着时间的推移会过渡到一个完全开放的系统。
听起来Libra协会将是一个联邦,可以通过投票和某种声誉来自我进化。
引言
这个生态系统将提供一种新的全球货币——Libra币——它将得到一篮子银行存款和高质量央行债券的全额支持。
Libra是一种通用的加密资产协议,第一个资产将是一种稳定币。
声音 | 众议院金融服务委员会主席:在对Libra作出决定之前还有很长的一段路要走:美国众议院金融服务委员会主席Waters表示,在对Facebook(FB.O)旗下加密货币Libra作出决定之前,还有很长的一段路要走。(CNBC)[2019/10/24]
随着时间的推移,会员资格将转变为完全开放,并且,仅基于会员持有的Libra。
听起来非常像权益证明。显然,计划是在5年后开放会员资格,希望他们到那时能搞明白权益证明......我认为他们会遇到与以太坊相同的问题!
该协会发布的报告概述了……转为一种无需许可系统的路线图。
我很确定这将是世界首次有分布式网络从需要许可转为无需许可。也许整个网络可以转换为PoS,但为了维持稳定币锚定/篮子,一些实体必须保持对传统金融系统的桥梁。这将是通过Libra协会来中心化控制的持续点。
验证者们轮流推动接受交易的过程。当一位验证者扮演领导者时,它向其他验证者提出交易,其中即包括客户直接提交给他们的交易,也包括通过其他验证者间接提交的交易。所有验证者都执行交易,并形成一个包含新账本历史的身份验证过的数据结构。作为共识协议的一部分,验证者对该数据结构的验证者进行投票。
这听起来像实用拜占庭容错,这是一个20年前很好理解的算法,尽管他们可能做了一些调整。我们在白皮书的第5节中了解到它被称为LibraBFT,它是HotStuff共识协议的变体。
作为在版本i处提交一笔交易Ti的一部分,共识协议在版本i处在数据库的完整状态上输出一个签名——包括它的整个历史——来验证对客户端查询的响应。
这主要是因为它意味着新的验证者应该能够加入网络并快速同步,而不必重放区块链的整个历史记录,假设它们信任现有的验证者。
逻辑数据模型
声音 | Libra协会董事:不认为退出Libra的公司有错,会有更多成员加入:Facebook区块链负责人、Libra协会董事David Marcus周二在接受彭博采访时表示,他并不认为退出Libra项目的公司有错,这些企业及其领导者对股东、员工和利益相关者负有责任。尽管政界人士似乎担心金融创新,但他仍对更多组织的加入该协会表示乐观。此前,参议院议员Sherrod Brown和Brian Schat曾致信Visa等公司,敦促其退出Libra项目。当被问及这封信是否构了议员对公司的威胁时,Marcus没有给出具体答案,他回答称:“我不知道,你觉得它听起来像什么?”但Marcus补充表示,这种信件会产生寒蝉效应(chilling effect)。(彭博社)[2019/10/16]
Libra协议使用基于帐户的数据模型来编码帐本状态。
从数据结构的角度来看,Libra更像是以太币或瑞波币而不是比特币。UTXO模型有利有弊,例如,由于基于输出的历史的简单性,它有更好的隐私和更健壮的交易历史,但是可能更难使用复杂的智能合约。因此,帐户模型是言之有理的,因为Facebook不太可能关注隐私,而它确实对智能合约感兴趣。
Libra协议不会将帐户与现实世界的身份相关联。用户可以通过生成多个密钥对来自由创建多个帐户。由同一用户控制的帐户彼此之间没有内在联系。该方案遵循了比特币和以太坊的例子,因为它为用户提供了假名。
令人惊讶的好,但我想知道Libra币的资产情况是否也是如此......观察这个系统对于想要构建更保护隐私的应用程序的开发者有多开放是很有趣的。
每个资源都有一个模块声明的类型。资源类型是名义类型,由类型的名称以及资源声明模块的名称和地址组成。
听起来您可以生成一个地址,只要每个资产都有一个唯一的名称,该地址就可以分配任意数量的资产。
声音 | Robert Kirkby:新西兰的加密货币收入征税计划对于Facebook Libra是一大胜利:新西兰税务当局已裁定,加密货币收入是合法的,并就如何准确征税提供了指导。对此,惠灵顿维多利亚大学经济学院讲师Robert Kirkby表示,“请注意,根据这一裁决,比特币仍将作为一种资产征税,与以股票支付一样,所以如果你用比特币支付,实际上没有任何变化。”正如税务当局所描述的,符合该法案的“稳定币”并不多。不过,如果Facebook真的推出拟议中的Libra币,这种情况明年可能会发生变化,因为这种货币与一篮子货币挂钩。(Wired)[2019/8/16]
执行一笔交易Ti产生有一个新的账本状态Si并执行状态代码、gas使用情况和事件清单。
好吧,现在我们知道如何通过类似于以太坊的资源成本系统来保护系统免受资源耗尽攻击了。
账本历史中没有交易区块的概念。
Libra协议中并没有实际的区块链数据结构——区块更多是一种虚拟/逻辑构造,用于协调系统状态的已确认快照。现在该部分的第一句话更有意义:
Libra区块链中的所有数据都存储在一个单一版本的数据库中。版本号是无符号型64位整数,对应于系统执行的交易数。
我熟悉的每个加密资产网络都以相同的方式在非常高的层次上运作:存在一个系统状态,然后执行一笔交易,然后存在一个新的系统状态。
将批量交易放入容器的目的,是为了排序/加时间戳。这对于无需许可的网络来说非常重要,在这种网络里数据是通过动态多方会员签名来进行身份验证的——验证者可以自由加入和离开网络。由于Libra运行着一个需要许可的系统,它可以使用更有效的共识算法,而不需要批量处理交易,因为交易的历史更不可能被重写。
在Libra协议的最初版本中,用户只能使用Move功能的有限部分。虽然Move用于定义核心系统概念,例如Libra币,但用户无法发布声明自己资源类型的自定义模块。这种方法允许Move语言和工具链在暴露给用户之前成熟——由实现核心系统组件的经验得知。该方法还延迟了通用智能合约平台所固有的事务执行和数据存储中的可扩展性挑战。
声音 | 日媒:Libra可能成为超出政府监管范围的无法控制的加密货币:据aninews消息,日本知名媒体The Yomiuri Shimbun近日针对Libra发表分析文章称,Libra可能对国家在货币发行和管理方面的主权构成威胁,并成为超出政府监管范围的无法控制的加密货币。每个国家都应该针对Libra计划表现出紧迫感。如果Libra成功,大量资本从现有的金融体系转入libra,现有金融体系可能会发生动荡。[2019/7/19]
这听起来与前面提到的“开放验证者成员资格”计划非常相似。听起来,Facebook好像还没有解决以太坊多年来一直在努力解决的任何大问题。
为了管理对计算容量的需求,Libra协议会收取交易费用,以Libra币计价。
有趣的是,听起来Libra币实际上是协议的原生单位,就像ETH是以太坊的原生单位一样。这导致了更多关于Libra假名性质的问题;你可以在没有AML/KYC的情况下获得币吗?如果不能,那么您似乎无法匿名使用任何系统功能。从有关Calibra钱包的阅读来看,它将需要AML/KYC,因此我想知道最终是否会进入不受严格控制的系统中。
该系统被设计为:在正常运行期间,当有足够的容量时,费用较低。
这真的很模糊,引发了很多问题——什么是低费用?什么是正常运行?什么是足够的容量?
执行交易
……区块链核心逻辑的许多部分是用Move来定义的。为了避免循环,VM在执行这些核心组件期间禁用了gas计量。
这听起来很危险,但作者们指出,核心组件必须以防御性方式编写来预防DoS攻击。
Move的关键特性是能够定义自定义资源类型......Move类型系统为资源提供了特殊的安全保证。永远不能复制资源,只能移动资源。这些保证由Move
声音 | Altcoin Thoreau:比特币还将继续下跌:据福布斯报道,过去五天里,加密货币市场的总市值损失了410亿美元,比特币从6400美元下跌至5170美元。加密货币交易员和投资者Altcoin Thoreau表示,自从2017年12月以来,加密货币市场一直处于看跌趋势。尽管将2013年比特币最后的抛物线走势与今天的市场进行比较,市场情况并不相同,目前还有一段时间可以走向趋势逆转。上一次的熊市超过600天,目前的熊市只有344天。考虑到比特币价格短期下跌的强烈程度,Altcoin Thoreau称比特币可能会从目前的价格范围继续大幅下跌。[2018/11/20]
VM静态强制执行。这允许我们将Libra币表示为Move语言中的资源类型。
这消除了先前的问题,即Libra币是不是ETH或BTC这样的原生资产。我希望这些币只是系统启动时允许的默认/唯一资源类型,其他资源将在以后出现。
相比一个更高级别的源语言,Move基于栈的字节码指令更少。此外,每条指令都具有简单的语义,可以通过更小的原子步骤来表示。这减少了Libra协议的规范足迹,并且更容易发现实现错误。
这听起来经过了深思熟虑;希望这意味着他们的脚本语言安全性将比以太坊更好。
经过身份验证的数据结构和存储
Libra协议使用单个Merkle树为账本历史提供经过验证的数据结构...具体而言,账本历史使用Merkle树累加器方法来形成Merkle树,这也提供了有效的附加操作。
我们再一次看到“Libra区块链”实际上并不是区块链。这个协议似乎设计得非常好,但当账本历史的数据结构是一组签名过的账本状态时,它们仍然称它为区块链,这真的很奇怪。验证者正在为每个账本状态进行承诺,并且所有历史账本状态也都在Merkle树中得到承诺,但我还没有真正看到形成一条链的任何反向链接数据列表,更不用说是一条链的区块。
帐户的身份验证器是此序列化表示的哈希。请注意,这表示要求在对帐户进行任何修改后重新计算整个帐户的身份验证器。这一操作的成本为O(n),其中n是完整帐户的字节表示长度。
哈,如果对给定帐户存储的数据量没有限制,听起来像DoS向量。
我们预计,随着系统的使用,最终与帐户相关的存储增长可能会成为一个问题。正如gas鼓励负责任地使用计算资源,我们期望存储可能需要一种类似的基于租金的机制。我们正在评估各种最适合生态系统的基于租金的机制。
另一个未解决的问题。等不及看「租金太高了!」的表情包。
投票权必须在epoch期间以及epoch之后的一段时间内保持诚实,以允许客户端同步新配置。离线时间超过这个时间段的客户端需要使用一些外部事实源重新同步,以获取他们信任的检查点。
哎哟。目前尚不清楚「这个时间段」有多长,但如果一个epoch不到一天,我猜它也不到一天。看起来这个共识协议没有健壮到参与者可以按照自己的意愿离开并重新加入网络。
拜占庭容错共识
LibraBFT假设一组3f1选票在一组可能诚实的验证者之间分配。当拜占庭验证者最多控制f票时,LibraBFT保持安全,能防止双花和分叉等攻击。
与PBFT非常相似,这种共识算法可以容忍33%的验证者不诚实。HotStuff修改听起来很好:
通过让验证者对一个区块的状态而不仅仅是交易序列进行签名,来抵抗不确定性错误。
我们采用了一个发出明确超时的pacemaker,验证者依靠其中的法定人数来进入下一轮——这应该可以改善活性。
运用了一个不可预知的领导者选举机制,以限制针对领导者的DoS攻击。
使用聚合签名来保存签名法定人数证书的身份验证者,以对区块接受进行投票。
联网
Libra协议中的每个验证者都维护系统的完整成员显示,并直接连接到需要与之通信的任何验证器。无法直接连接的验证者将被系统列入拜占庭容错的配额范围。
需要大量工作才能将系统扩展到数百个验证者。
LibraCore实现
Libra区块链的安全性取决于验证者、Move程序和MoveVM的正确实现。我们正在解决LibraCore中的这些问题。
几乎总结了这一部分,尽管他们是用Rust来实现的,这似乎是性能和安全性的良好开端。
性能
我们预计Libra协议的初次发布能支持每秒钟1000次付款,一笔交易提交和指派之间的最终化时间为10秒。
由于只有100个左右的验证者并且它们都直接相互连接,因此10秒的“区块时间”听起来可行。
最低节点要求:
40Mbps互联网连接
1个普通CPU
16TBSSD
之前有一些参考文献要求保持验证者从头开始执行初始同步,而不是信任来自其他验证器的签名状态的能力。我认为如果Libra得到充分使用,那么执行这样的同步将很快变得非常不切实际,因此节点安全模型将高度依赖于信任验证者。
用Move实现Libra的生态系统政策
储备是实现价值保值的关键机制。通过储备,每个币都有一系列稳定而有流动性的资产完全背书。Libra币合约允许协会在需求增加时制造新币,并在需求收缩时销毁它们。该协会并不制定货币政策。它只能根据授权经销商的要求铸造和销毁币。用户无需担心协会将通胀引入系统或使货币贬值:对于要制造的新币,储备中必须有相应的法定存款。
好的,但现在我们谈论的是网络外部的事件。如白皮书前面所述,网络无法执行使用网络状态外部数据输入的脚本。因此,上述片段中的“能”和“必须”的修饰语肯定是指网络不知道的Libra协会政策或合同义务。
共识算法依赖于验证者集管理Move模块来维护当前的验证者集并管理验证者之间的投票分配。最初,Libra区块链仅向创始成员授予选票。
假设验证者就更改验证者集进行投票,听起来这会导致类似于我们在权益证明系统中看到的问题——远程攻击。如果创始成员私钥的足够阈值受到损害,攻击者是否可以从创世块开始写一个新的账本历史?如果是这样,其他节点会接受吗?目前尚不清楚共识协议是否允许重写旧状态,还是它只能添加。
我们计划逐步过渡到权益证明。
如果他们能解决尚未解决的问题。
未解决的问题
治理如何运作?
我们可以在这里看到,Libra协会是一个成员委员会,需要2/3绝对多数人来做出改变。他们是唯一允许制造或销毁Libra币的人,但如果有足够的共识,他们可能会做出他们想要的改变。
是否需要AML/KYC?
在协议层显然不需要,但Calibra钱包声明,所有用户将通过政府颁发的ID进行验证。这听起来像Calibra钱包将是至少一段时间内唯一可用的钱包,所以目前还不清楚开发人员和用户能否在Libra网络上运行不遵守与Calibra相同标准的App。
什么是低费用?什么是正常操作?什么是足够的容量?
Calibra钱包FAQ承诺低费用,但似乎这可能与底层协议在高负荷时的操作相冲突。
交易费将是低成本和透明的,特别是如果您在进行国际汇款。Calibra将削减费用,以帮助人们留下更多的钱。
Libra真的会对开发者开放吗?
根据实现无需许可的共识的计划:
Libra区块链将向所有人开放——任何消费者、开发者或企业都可以使用Libra网络,在其上构建产品,并通过其服务增加价值。开放获取确保了进入和创新的低门槛,并鼓励有利于消费者的健康竞争。
我怀疑开发人员能够在这个平台上运行他们梦寐以求的任何技术上有效的应用程序。我没有读到任何内容能让我相信这个系统会是抗审查的,但只有时间会证明!
来源链接:medium.com
Gate.ioStartup主流币打折福利EOS5折认购已经成功完成,ATOM等主流币种5折销售即将到来,真金白银地为用户送福利.
过去24小时,据比推数据,市值最大的加密货币在北京时间6月21日凌晨震荡上行突破震荡区间的心理阻力位9500美元。这也是其在1万美元之前的最后一个阻力位.
2019年5月挖矿市场告 本期报告重点内容: 前言 币价:大盘涨幅53.6%,十大挖矿币种平均价格涨幅67.7%全网算力:十大挖矿币种算力平均涨幅11%.
安永会计师事务所周三发布了一份关于QuadrigaCX交易所的长达70页的报告,报告中称QuadrigaCX交易所已故的创始人兼CEO利用客户的资金在其他加密货币交易所中创建自己的账户.
6月18日,Facebook发布加密货币项目Libra白皮书,再次引发了业内对加密数字货币的讨论。Libra的目标是建立一套简单的、无国界的货币和为数十亿人服务的金融基础设施.
过去的十年,比特币等数字货币经历了各种“被死亡”事件,不但没有消失,反而不断加固了其货币属性。但是我们在2018年可以显著的发现,用户增长受阻现象,那么,要想用户再增长复现,接下来的日子里务必要.