声明:本文旨在传递更多市场信息,不构成任何投资建议。文章仅代表作者观点,不代表火星财经官方立场。
边肖:记得要集中注意力。
投资区块链,戳:火星财经App下载
来源:BixinWallet
原标题:《一位比特币开发者对 Libra 的思考》
作者詹姆森洛普
我深入研究了26页技术文档,里面描述了Libra币(等)作为平台使用的协议。).它有令人印象深刻的53个作者!
摘要
Libra协议允许来自不同机构的一组复制品——被称为验证者3354,以共同维护可编程资源数据库。嗯,这里没有字面上的姿态。——这个系统将被一系列权威机构从上到下控制。但请注意,这意味着数据库是针对“可编程资源”的,而不仅仅是数字货币。
这些资源将由通过公钥加密认证的不同用户帐户拥有,并遵守这些资源的开发者指定的自定义规则。用“资源”之类的常用词,让我怀疑这远不止是一种稳定的货币。
该事务基于一个用新的编程语言Move(在未来版本中由用户定义)预定义的智能契约。我们使用Move来定义区块链的核心机制,比如货币和验证者成员。好吧,现在变得有趣了。使用定制智能合同的语言将导致许多问题,关于该语言的功能有多丰富,以及——系统对敌意合同的鲁棒性如何。在开发者的友好度,以及Libra如何保护智能合约开发者不陷入困境方面也会有一些问题。
这些核心机制使得创建独特的治理机制成为可能,这种机制在早期将基于现有系统的稳定性和声誉,但随着时间的推移将过渡到完全开放的系统。听起来天秤座协会将会是一个联合会,可以通过投票和某种声誉从自身进化而来。
介绍
这个生态系统将提供一种新的全球货币——Libra currency ——,它将得到一篮子银行存款和优质央行债券的全面支持。Libra是通用的加密资产协议,第一资产会是稳定的货币。
随着时间的推移,会员资格会变得完全开放,而且只会以会员所持有的天秤为基础。这听起来很像是利害关系的证明。很明显,计划是5年后开放会员,希望他们到时候能搞清楚权益证明.我觉得他们会遇到和以太坊一样的问题!
该协会发布的报告概述了……成为免执照系统的路线图。我相信这将是世界上第一次分布式网络从需要许可证变成不需要许可证。也许整个网络都可以转换成PoS,但为了维持稳定的货币锚/篮子,一些实体必须保留通往传统金融体系的桥梁。这将是通过天秤座协会集中控制的连续点。
验证人员轮流推动接受交易的过程。当验证者作为领导者时,它向其他验证者提出交易,包括客户直接提交给他们的交易和通过其他验证者间接提交的交易。所有验证者执行交易并形成包含新账簿历史的认证数据结构。作为共识协议的一部分,验证者对数据结构的验证者进行投票。
这听起来像实用的拜占庭容错,这是20年前很好理解的算法,尽管他们可能做了一些调整。我们在白皮书第5节中了解到,它被称为LibraBFT,是HotStuff共识协议的变体。
作为在版本I提交事务Ti的一部分,合意协议输出包括其全部历史3354的签名3354,以在数据库的完整状态下验证对版本I的客户机查询的响应。这主要是因为这意味着新的核查员应该能够加入网络并快速同步,而不必重放区块链的整个历史,假设他们信任现有的核查员。
逻辑数据模型
Libra协议使用基于帐户的数据模型来编码图书的状态。从数据结构来看,天秤座比比特币更像以太坊或Ripple。UTXO模型有利有弊。例如,由于基于输出的历史的简单性,它具有更好的隐私性和更健壮的交易历史,但它可能更难以使用复杂的智能合约。因此,账户模型是有意义的,因为脸书不太可能关注隐私,但它确实对智能合约感兴趣。
Libra协议不会将帐户与真实身份相关联。用户可以通过生成多个密钥对来自由创建多个帐户。同一用户控制的账户之间没有内部关系。这个方案效仿了比特币和以太坊的例子,因为它为用户提供了假名。
出乎意料的好,但我想知道天秤币的资产是否也是如此.有趣的是,观察这个系统对希望构建更多隐私保护应用程序的开发人员来说有多开放。
每个资源都有一个由模块声明的类型。资源是一种名义类型,由类型名称和资源声明模块的名称和地址组成。听起来好像您可以生成一个可以分配任意数量资产的地址,只要每个资产都有一个唯一的名称。
执行交易T i会生成新的账簿状态S i,并执行状态代码、气体使用和事件列表。好了,现在我们知道了如何通过一个类似以太坊的资源消耗系统来保护系统免受资源耗尽攻击。
书史上没有交易块这个概念。Libra协议中没有实际的区块链数据结构。块——更多的是一个虚拟/逻辑结构,用于协调系统状态的确认快照。现在这部分的第一句话更有意义:
Libra区块链中的所有数据都存储在一个版本的数据库中。版本号是一个无符号的64位整数,对应于系统执行的事务数量。我所熟悉的每一个cryptoasset网络在非常高的层次上都以同样的方式运行:有一个系统状态,然后执行一个事务(实际上是执行一次状态转移函数),然后有一个新的系统状态。
将批量事务放入容器(块)的目的是对它们进行排序/时间标记。这对于未经许可的网络非常重要,在这种网络中,数据通过动态多方成员签名进行认证。——验证者可以自由加入和离开网络。由于Libra运行的是许可系统,它可以使用更有效的共识算法,而无需批量处理交易,因为交易的历史不太可能被重写。
在Libra协议的原始版本中,用户只能使用有限部分的Move功能。虽然Move用于定义核心系统概念,比如Libra coins,但是用户不能发布声明自己资源类型的自定义模块。这种方法允许Move语言和工具链在向用户公开之前变得成熟。从实现核心系统组件的经验可知。该方法还延迟了通用智能合约平台中固有的事务执行和数据存储的可扩展性挑战。
这听起来非常类似于前面提到的“开放验证会员”计划。听起来脸书没有解决以太坊多年来试图解决的任何大问题。
为了管理对计算能力的需求,Libra协议收取交易费,交易费以Libra货币计价。有趣的是,听起来Libra coin其实是协议的原生单位,就像ETH是以太坊的原生单位一样。这就引出了更多关于天秤座假名性质的问题;没有AML/KYC可以得到硬币吗?如果不是,那么你似乎不能匿名使用任何系统功能。从读到Calibra钱包,它会需要AML/KYC,所以不知道它最终会不会进入管控不严格的系统。
该系统的设计使得在正常运行期间,当有足够的容量时,成本较低。这真的很模糊,提出了很多问题。——什么是低成本?什么是正常操作?什么是足够的容量?
执行交易
……区块链核心逻辑的许多部分(包括扣除汽油费)都是由Move定义的。为了避免循环,VM在执行这些核心组件期间禁用气体计量。这听起来很危险,但作者指出,核心组件必须以防御方式编写,以防止DoS攻击。
Move的关键特性是定义自定义资源类型的能力.移动式系统为资源提供了特殊的安全保障。你永远不能复制资源,你只能移动它们。这些保证由MoveVM静态执行。这使得我们可以用Move语言将Libra币表示为资源类型。这就消除了前面的问题,即天秤座硬币是否是ETH或BTC等原生资产。希望这些币只是系统启动时允许的默认/唯一资源类型,以后还会出现其他资源。
与更高级的源语言相比,Move基于栈的字节码指令更少。此外,每个指令都有简单的语义,可以用更小的原子步骤来表示。这减少了Libra协议的规范足迹,并且更容易发现实现错误。这听起来很有想法;希望这意味着他们的脚本语言安全性会比以太坊更好。
经过验证的数据结构和存储
Libra协议使用单个Merkle树为帐簿历史提供经过验证的数据结构.具体来说,账簿历史使用Merkle树累加器方法形成Merkle树,也提供了有效的附加操作。再一次,我们看到“天秤座区块链”实际上不是区块链。这个协议看起来设计得非常好,但是真的很奇怪,当分类帐历史的数据结构是一组签名的分类帐状态时,他们仍然称之为区块链。验证者在对每个账本状态做承诺,所有历史账本状态也在Merkle树中做承诺,但我还真没见过什么形成链条的反向链接数据列表,更别说链条的一个块了。
的帐户身份验证器是此序列化表示形式的哈希。请注意,这意味着在对帐户进行任何修改后,需要重新计算整个帐户的验证者。这个操作的代价是O(n),其中n是完整账户的字节表示长度。哈,如果给定账户存储的数据量没有限制,听起来就像DoS向量。
我们预计,随着系统的使用,最终与帐户相关的存储增长可能会成为一个问题。正如gas鼓励负责任地使用计算资源一样,我们预计存储可能需要类似的基于租金的机制。我们正在评估最适合生态系统的各种基于租金的机制。另一个未解决的问题。迫不及待想看“房租太高了!”表情包。
投票权在纪元期间和之后必须是诚实的,以允许客户端同步新的配置。离线时间超过这段时间的客户端需要与一些外部事实源重新同步,以获取它们的可信检查点。哎哟。目前还不清楚“时间段”有多长,但如果一个纪元不到一天,我估计是不到一天。这种共识协议似乎不够健壮,参与者不能按照自己的意愿离开和重新加入网络。
拜占庭容错共识
LibraBFT假设一组3f 1的选票分布在一组可能诚实的验证者(拜占庭人)中。当拜占庭验证者最多控制F票时,LibraBFT保持安全,可以防止双花叉等攻击。非常类似于PBFT,这个共识算法可以容忍33%的验证者的不诚实。HotStuff修改听起来不错:
通过让验证者签署块的状态,而不仅仅是事务序列,来抵抗不确定性错误。我们采用了发出明确超时的起搏器,验证者依靠法定人数进入下一轮——,应该会提高活跃度。不可预测的领导者选举机制用于限制针对领导者的DoS攻击。使用聚合签名保存对仲裁证书进行签名的验证者,以投票支持块接受。网络
Libra协议中的每个验证者维护系统的完整成员显示,并直接连接到任何需要与之通信的验证者。无法直接连接的验证器会被系统纳入拜占庭容错配额。将该系统扩展到数百台验证机需要大量的工作。
Libra核心实施
Libra区块链的安全性依赖于验证器、移动程序和移动虚拟机的正确实现。我们正在天秤座核心解决这些问题。几乎总结了这一部分,即使它们都是用Rust实现的,这似乎是性能和安全性的一个好的开始。
表演
我们预计Libra协议的初始版本可以支持每秒1000笔支付,一笔交易的提交和分配之间的最终时间是10秒。由于只有大约100名核查员,而且他们都直接相互连接,10秒的“封锁时间”听起来是可行的。
最低节点要求:
在40 Mbps互联网连接到普通CPU16 TB SSD之前,一些引用需要保持验证者从头执行初始同步的能力,而不是信任来自其他验证者的签名状态。我认为如果完全使用Libra,进行这样的同步将很快变得非常不切实际,因此节点安全模型将高度依赖于信任验证者。
用Move实现Libra的生态系统政策
【天秤币】储备是实现保值的关键机制。通过储备,每种货币都由一系列稳定和流动的资产完全背书。Libra硬币合约允许协会在需求增加时制造新硬币,在需求萎缩时销毁新硬币。该协会不制定货币政策。它只能根据授权经销商的要求铸造和销毁硬币。用户不必担心协会将通货膨胀引入系统或使货币贬值:对于要制造的新货币,储备中必须有相应的法定存款。好的,但是现在我们正在谈论网络之外的事件。如白皮书前面所述,网络无法执行使用外部网络状态数据输入的脚本。因此,上述片段中的修饰语“可以”和“必须”必须是指Libra协会的政策或网络未知的合同义务。
一致性算法依靠验证者集管理移动模块来维护当前的验证者集并管理验证者之间的投票分配。最初,天秤座区块链只授予创始成员投票权。假设验证者投票改变验证者集合。听起来这将导致问题——远程攻击类似于我们在权利证明系统中看到的。如果创建成员私钥的足够阈值被破坏,攻击者能否从创建块写一个新的账本历史?如果是,其他节点会接受吗?尚不清楚共识协议是否允许重写旧状态,还是只能添加旧状态。
我们计划逐步过渡到股权证明。如果他们能解决未解决的问题。
未解决的问题
治理是如何工作的?
这里可以看到,天秤协会是会员委员会,需要2/3的绝对多数才能做出改变。他们是唯一被允许制造或破坏天秤币的人,但如果有足够的协议,他们可能会做出他们想要的改变。
是否需要反洗钱/KYC?
显然在协议层面没有要求,但Calibra wallet声明所有用户都将通过政府颁发的ID进行验证。听起来Calibre wallet至少在一段时间内将是唯一可用的钱包,因此尚不清楚开发者和用户是否可以在Libra network上运行不遵循与Calibre相同标准的应用。
什么是低成本?什么是正常操作?什么是足够的容量?
Calibra Wallet FAQ承诺低费用,但似乎这可能会与底层协议在高负载下的运行相冲突。
交易费用将是低成本和透明的,尤其是如果你是国际汇款。Calibra将削减成本,以帮助人们留下更多的钱。天秤座真的会对开发者开放吗?
未经许可按计划达成共识:
Libra区块链将向所有人开放——任何消费者、开发者或企业都可以使用Libra network,在其上构建产品,并通过其服务增加价值。准入确保了进入和创新的低门槛,并鼓励有利于消费者的健康竞争。我怀疑开发者能在这个平台上运行他们梦想的任何技术上有效的应用。我还没有读到任何可以让我相信这个系统会反审查的东西,但只有时间会证明一切!
声明:本文为火星作者作品,不代表火星财经官方立场。本文转载请注明出处、作者、链接。
提示:加密资产属于高风险投资标的,请谨慎选择。