位置:编程技术网 > 区块链 > 正文 >

区块链布道者Jameson Lopp:Facebook“Libra”白皮书全解析(2)

2019年06月25日 13:54来源:未知手机版

qq头像欧美,涉嫌犯罪案件移送书,qq非主流情侣网名

这一点值得注意,主要是因为这意味着新的验证者应该能够加入网络,并且迅速同步不需要重放区块链的整个历史,而是假设他们信任现有的验证者。

这种账户模型行得通是因为Facebook不大可能关心隐私,尽管它似乎的确对智能合约感兴趣。

逻辑数据模型

Libra协议使用基于帐户的数据模型来对帐本状态进行编码。

就数据结构的角度而言,相对于比特币,Libra跟以太币或Ripple更像。UTXO模型有利有弊——比方说,由于以输出为基础的历史的简单性,它的隐私性更好和交易历史更健壮——但是使用复杂的智能合约可能会更难。因此,帐户模型行得通是因为Facebook不太可能关注隐私,即便该平台似乎确实对智能合约感兴趣。

Libra协议并未将帐户与真实世界中的身份进行关联。用户可以通过生成多个密钥对来自由地建立多个帐户。由同一用户控制的帐户彼此之间没有内在联系。这一方案效仿的是比特币和以太坊的,因为它为用户提供了假名。

这似乎好得令人惊讶,但我在想对于Libra币这个资产来说情况是否也是如此。这个系统对于那些想要开发更注重隐私保护应用的开发者究竟有多开放呢?观察看看将会非常有趣。

每种资源都有一个由模块声明的类型。资源类型属于象征性类型,定义包括类型名称、声明此资源的模块名称及地址。

似乎可以生成地址,且只要每个资产有唯一名称,任意数量的资产均可指向该地址。

执行交易T i会产生新的账本状态S i以及执行状态代码、能耗情况与事件清单。

好吧,现在我们知道系统如何免受资源耗尽攻击了,大概是利用了类似以太坊的能耗系统。

账本历史里面没有交易区块的概念。

有趣。Libra协议里面并没有真正的区块链数据结构 ——区块更多是一种虚拟/逻辑构造,是验证者用来协调系统状态的已确认快照的。回想一下,本章的第一句话意义显得更重要了:

Libra区块链的所有数据均存储在一个单一版本化的数据库中。版本号是无符号型64位整数,与系统执行的交易数对应。

我所熟知的每种加密资产网络在高级层面的工作机制都是一样的:会有一个系统状态,然后执行一笔交易(其实就是个状态转换函数),然后就有了一个新的系统状态。

把一批交易放入容器,或者叫区块的目的是为了对其进行排序以及加时间戳 。这对于无需许可的网络来说非常重要。在这种网络里面,数据是通过动态成员多方签名来进行身份验证的,验证者可以自由加入和离开网络。由于Libra跑的是有许可系统,所以可以使用更高效的共识算法,而不需要批量处理交易,因为交易历史重写的可能性要低很多。

在Libra协议的最初版本里面,用户只能使用Move功能的有限子集。虽然Move用于定义核心的系统概念,比如Libra币等,但用户无法发布声明自己资源类型的自定义模块。根据实现核心系统组件的经验可知,这种做法可让Move语言和工具链在对用户开放之前就走向成熟。这种做法还可以将通用智能合约平台所面临的、内在的交易执行和数据存储的伸缩性挑战延后。

似乎跟前面提到的“开放验证者成员资格”计划非常相似。Facebook好像还没有解决以太坊多年来一直在努力解决的任何大规模问题。

为了管理对计算能力的需求,Libra协议会收取交易费用,以Libra币计价。

Libra币其实上是该协议的原生单位,就像ETH是以太坊的原生单位一样。这导致了另一个问题,这个问题跟Libra的匿名属性有关:没有AML/KYC的情况下你可以获得Libra币吗?如果不能,则似乎你无法在匿名情况下使用任何的系统功能。根据Calibra钱包方面的读物来看,它是需要AML/KYC的。所以不知道它是否能逐步演进成一个不严格受控的系统。

系统在设计上只要容量足够会让正常运行期间的费用较低。

这种说法很含糊,会引发很多疑问:什么叫低费用?什么是正常运行?多少是足够的容量?

本文地址:http://www.reviewcode.cn/qukuailian/53244.html 转载请注明出处!

今日热点资讯