主页 > imtoken官方苹果下载 > Jameson Lopp 对“Libra 区块链”的思考

Jameson Lopp 对“Libra 区块链”的思考

imtoken官方苹果下载 2023-10-06 05:10:12

比特币和以太坊的最小计量单位_以太坊和比特币_显卡挖比特币还是以太坊

共享理财

传媒|市场营销|咨询

显卡挖比特币还是以太坊_以太坊和比特币_比特币和以太坊的最小计量单位

简介: 我读过的任何内容都不能让我相信这个系统会抵制审查制度。

与昨天Facebook发布的Libra白皮书相比,Libra技术文档白皮书也一并发布。

今天,比特币开发者、专业密码朋克 Jameson Lopp 对这份 26 页的技术文档进行了研究和分析,其中包括 53 位作者。 从逻辑数据模型、执行交易、身份验证、数据结构存储、LibraBFT、性能等方面对Libra技术文档进行拆分和概述。

以下是 Jameson Lopp 对 Libra 技术文档的解读:

概括

白皮书:Libra 协议允许来自不同机构的一组副本(称为验证者)共同维护一个可编程资源的数据库。

Jameson Lopp:该系统将由一系列权威机构以自上而下的方式进行控制。 但是请注意,该数据库用于“可编程资源”而非数字货币。

白皮书:这些资源由经过公钥加密验证的不同用户帐户拥有,并遵守这些资源的开发人员指定的自定义规则。

Jameson Lopp:使用像“资源”这样的通用词让我怀疑这不仅仅是一种稳定币。

白皮书:Libra 协议允许来自不同机构的一组副本(称为验证者)共同维护一个可编程资源的数据库。 “交易基于预先确定的合同。 在未来的版本中,用户将使用一种名为 Move 的新编程语言来定义智能合约。 我们使用 Move 来定义区块链的核心机制,例如代币和验证者成员资格。 .

Jameson Lopp:使用定制的智能合约语言会引发很多问题,比如语言的功能有多丰富以及系统的合约功能有多强大。 关于它对开发人员的友好程度以及 Libra 将在多大程度上保护智能合约开发人员免于陷入困境,也会有疑问。

白皮书:这些核心机制能够创建一个独特的治理机制,该机制早期建立在现有机构的稳定性和声誉之上,但随着时间的推移过渡到一个完全开放的系统。

Jameson Lopp:听起来 Libra 协会将成为一个联盟,可以通过投票和某种声誉来发展自己。

1 简介

白皮书:这个生态系统将提供一种新的全球货币——Libra 货币——将由大量银行存款和优质中央银行的国债提供全面支持。

比特币和以太坊的最小计量单位_显卡挖比特币还是以太坊_以太坊和比特币

Jameson Lopp:Libra是一个通用的加密资产协议,它的第一个资产会是稳定币。

白皮书:随着时间的推移,Libra 会员资格将完全开放并完全基于 Libra 会员资格。

Jameson Lopp:听起来很像 POS。 显然,他们的计划是在 5 年内开放会员资格,希望到那时他们能找到 POS……我预计他们会遇到与以太坊相同的问题!

白皮书:协会发布的一份报告,概述了向无许可系统过渡的路线图。

Jameson Lopp:我很确定这将是分布式网络从许可过渡到非许可的第一个世界。 也许整个网络可以切换到 PoS,但为了保持稳定的挂钩/篮子,一些实体必须保持与传统金融系统的桥梁畅通。 这将是通过 Libra 协会持续集中控制的一个点。

白皮书:验证者轮流推动接受交易的过程。 当验证者充当领导者时,它向其他验证者提议交易,这些交易既由客户直接提交给它,也通过其他验证者间接提交给它。 所有验证者执行交易并形成一个包含新账本历史的经过身份验证的数据结构。 作为共识协议的一部分,验证者对数据结构的验证者进行投票。

Jameson Lopp:这听起来像是 Practical Byzantine Fault Tolerance——一种已有 20 年历史的算法。 但他们可能已经做了一些调整。 我们在白皮书第 5 节了解到,它被称为 LibraBFT,是 HotStuff 共识协议的变体。

白皮书:作为在版本 i 提交事务 Ti 的一部分,共识协议在版本 i 输出数据库完整状态(包括其整个历史记录)的签名,以验证对客户端查询的响应。

Jameson Lopp:主要是因为这意味着新的验证者应该能够加入网络并快速同步,而无需重播区块链的整个历史,前提是他们信任现有的验证者。

2. 逻辑数据模型

白皮书:Libra 协议使用基于账户的数据模型来编码账本状态。

Jameson Lopp:从数据结构的角度来看,Libra 更像是以太坊或 Ripple 而不是比特币。 由于基于输出的历史的简单性,UTXO 模型有其优点和缺点,例如更好的隐私和更健壮的交易历史。 但是处理复杂的智能合约可能会更加困难。 所以账户模型是有道理的比特币和以太坊的最小计量单位,Facebook不太可能关心隐私,它确实对智能合约感兴趣。

白皮书:Libra 的协议没有将账户与真实身份联系起来。 用户可以通过生成多个密钥来自由创建多个帐户。 由同一用户控制的帐户之间并没有固有的联系。 该方案以比特币和以太坊为例,为用户提供假名。

Jameson Lopp:同时,我也想知道 Libra 的稳定币资产是否也是如此……对于想要构建更多隐私保护应用程序的开发者来说,观看这个系统会很有趣。

白皮书:每个资源都有一个由模块声明的类型。 资源类型是一种标称类型,由类型的名称和资源声明模块的名称和地址组成。

Jameson Lopp:听起来人们可以生成一个可以分配任意数量资产的地址,只要每个资产都有一个唯一的名称。

白皮书:执行一笔交易Ti会生成一个新的账本状态Si,并执行状态码、gas用量、事件列表。

Jameson Lopp:所以现在我们知道如何通过类似于以太坊的资源成本系统来保护系统免受资源耗尽攻击。

以太坊和比特币_显卡挖比特币还是以太坊_比特币和以太坊的最小计量单位

白皮书:在账本的历史上,其实并没有交易的概念。

Jameson Lopp:有趣的是,Libra 协议中没有实际的区块链数据结构——块更多是一种虚拟/逻辑结构,用于协调系统状态的确认快照。 现在该部分的第一句话更有意义:

“Libra 区块链中的所有数据都存储在一个版本控制的数据库中。版本号是一个无符号的 64 位整数,对应于系统执行的交易数量。”

Jameson Lopp:我所熟悉的每个加密资产网络在非常高的层次上都以相同的方式工作:有一个系统状态,然后执行交易,实际上是一个状态转换函数,然后存在一个新的系统状态。

以太坊和比特币_显卡挖比特币还是以太坊_比特币和以太坊的最小计量单位

将成批交易放入容器(块)的目的是为了排序/时间戳目的。 这对于通过动态多方成员身份签名验证数据的无许可网络很重要(验证者可以自由加入和离开网络)。 由于 Libra 运行的是许可系统,它可以使用更高效的共识算法,不需要批量交易,因为交易历史不太可能被重写。

白皮书:在 Libra 协议的初始版本中,只有一小部分 Move 功能可供用户使用。 虽然 Move 用于定义核心系统概念,例如 Libra 货币,但用户无法发布声明自己资源类型的自定义模块。 这种方法允许移动语言和工具链在暴露给用户之前成熟——由实现核心系统组件的经验决定。 这种方法还避免了通用智能合约平台固有的交易执行和数据存储方面的可扩展性挑战。

Jameson Lopp:这听起来与前面提到的 Open Validator Membership 计划非常相似。 Facebook 似乎并没有解决以太坊多年来一直在努力解决的任何大问题。

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

Jameson Lopp:有趣的是,听起来 Libra 的币实际上是协议的原生单位,就像 ETH 是以太坊的原生单位一样。 这引发了更多关于 Libra 匿名性质的问题; 你可以在没有 AML/KYC 的情况下获得代币吗? 如果没有,那么您似乎无法匿名使用系统的任何功能。 从阅读 Calibra 钱包来看,它需要 AML/KYC,所以我想知道最终是否会访问一个不受严格控制的系统。

白皮书:该系统旨在在有足够容量的情况下在正常操作期间收取低费用。

Jameson Lopp:这真的很模糊,并引发了很多问题——什么是低收费? 什么是正常操作? 什么是足够的容量?

3.执行交易

白皮书:区块链的很多核心逻辑都是Move定义的,包括gas费的扣除。 为避免循环,VM 在执行这些核心组件时禁用 gas 计量。

Jameson Lopp:这听起来相当危险,但作者指出,核心组件必须以防御方式编写,以防止 DoS 攻击。

白皮书:Move 的一个关键特性是能够定义自定义资源类型。 Move 类型系统为资源提供特殊的安全保证。 资源永远无法复制,只能移动。 这些保证由 Move VM 静态强制执行。 这使我们能够将 Libra 硬币表示为移动语言中的一种资源类型。

Jameson Lopp:这澄清了之前的问题:Libra 币是像 ETH 还是 BTC 这样的天然资产。 我希望这些硬币成为默认/唯一的资源类型。

白皮书:Move 的基于堆栈的字节码的指令少于高级源代码。 此外,每条指令都具有简单的语义,可以用更少的原子步骤来表达。 这减少了 Libra 协议的规范足迹,并更容易发现实施错误。

显卡挖比特币还是以太坊_以太坊和比特币_比特币和以太坊的最小计量单位

Jameson Lopp:这听起来是故意的; 希望这意味着他们的脚本语言的安全性将比以太坊的安全性得到更好的审查。

4. 认证数据结构和存储

白皮书:Libra 协议使用 Merkle 树为账本历史提供经过验证的数据结构。 具体来说,账本历史使用Merkle树累加器的方式形成Merkle树,同样提供了高效的追加操作。

Jameson Lopp:我们再次看到“Libra 区块链”实际上并不是区块链。 该协议看起来设计得很好,但当分类账历史的数据结构是一组已签名的分类账状态时,他们一直称其为区块链真的很奇怪。 验证者在对每一个账本状态进行承诺,所有历史账本状态也在默克尔树中进行了承诺,但是我还没有看到任何形成链的数据反向链表,更不用说形成区块了。

白皮书:帐户的验证器是此序列化表示的哈希值。 请注意,此表示要求在对帐户进行任何修改后为整个帐户重新计算身份验证器。 此操作的成本为 O(n),其中 n 是完整帐户的字节表示的长度。

Jameson Lopp:如果给定帐户可以存储的数据量没有限制,这听起来像是一个 DoS 向量。

白皮书:我们预计,随着系统的使用,与帐户相关的存储增长最终可能会成为一个问题。 正如 Gas 鼓励负责任地使用一样。 对于计算资源,我们希望可能需要类似的基于租金的存储机制。 我们正在评估一系列最适合生态系统租金机制的方法。

Jameson Lopp:另一个悬而未决的问题。 迫不及待的说“房租太他妈的高了!!”

白皮书:为了让客户端同步到新配置,投票权必须在纪元期间和纪元之后的一段时间内保持诚实。 离线时间超过此时间的客户端需要与某些外部数据源重新同步以获得他们信任的检查点。

Jameson Lopp:目前还不清楚“这个纪元”有多长,但如果一个纪元少于一天,我猜它不到一天。 好像这个共识协议不够强大,参与者可以随心所欲地离开和重新加入网络。

5. 天秤座 BFT

白皮书:LibraBFT 假设一组 3f+1 票分布在一组可能是诚实的或拜占庭式的验证器中。 LibraBFT 仍然是安全的,当最多 f 票由拜占庭验证者控制时,可以防止双花和分叉等攻击。

Jameson Lopp:就像 PBFT 一样,这种共识算法可以容忍 33% 的验证者不诚实。 HotStuff 修改听起来是经过深思熟虑的:

1. 通过让验证者签署区块状态(而不仅仅是交易序列)来抵制不确定性错误。

2. 发出明确超时信号的起搏器,验证者依靠法定人数进入下一轮 - 这应该会提高活跃度。

3.不可预测的领导者选举机制,限制DoS攻击领导者。

4. 聚合签名保留签署群体证书的验证者对区块接受进行投票。

6.网络

比特币和以太坊的最小计量单位_显卡挖比特币还是以太坊_以太坊和比特币

白皮书:Libra 协议中的每个验证器都维护着系统的完整成员视图,并直接连接到它需要与之通信的任何验证器。 无法直接连接的验证器被认为属于系统可以容忍的拜占庭故障范围。

Jameson Lopp:将系统扩展到数百个验证器之外需要大量工作。

7. Libra核心实现

白皮书:Libra 区块链的安全性取决于验证器、Move 程序和 Move VM 的正确实施。 解决 Libra 核心的这些问题是一项正在进行的工作。

Jameson Lopp:虽然他们已经用 Rust 编写了一个实现,但这似乎是性能和安全性的良好开端,这里已经做了很多总结。

8.性能

白皮书:我们期待 Libra 协议的初步推出,支持 1000 次支付计算。 每秒 1000 个支付交易,在提交和提交交易之间有 10 秒的最终时间。 由于只有 100 个左右的验证者,并且它们都直接相互连接,因此 10 秒的“出块时间”听起来是可行的。

詹姆森·洛普:

最低节点要求:

40 Mbps 互联网连接

1 个商品 CPU

16TB 固态硬盘

之前有提到维护验证器从头开始执行初始同步的能力,而不是信任来自其他验证器的签名状态。 我预测,如果 Libra 得到充分利用,执行这种同步将很快变得非常不切实际,因此节点安全模型将高度依赖于信任验证者。

9. 通过 Move 实施 Libra 生态系统政策

白皮书:Libra Coin Reserve 是保值的关键机制。 通过储备,每枚代币都得到一组稳定的流动资产的支持。 Libra 代币合约允许协会在需求增加时铸造新代币,并在需求收缩时销毁它们。 该协会不制定货币政策。 它只能应授权经销商的要求铸造和销毁硬币。 用户不必担心此关联导致的通货膨胀或货币贬值:要铸造新币,必须有相应的法定储备。

Jameson Lopp:但现在我们谈论的是网络之外的事件。 如白皮书前面所述,网络无法执行使用来自网络状态之外的数据输入的脚本。 因此比特币和以太坊的最小计量单位,上述段落中的修饰语“可以”和“必须”一定是指 Libra 的协会政策或合同义务,而 Libra 社交网络并不知道这一点。

白皮书:共识算法依赖验证人集管理Move模块维护当前验证人集,管理验证人之间的投票分配。 最初,Libra 区块链仅向创始成员授予选票。

Jameson Lopp:假设验证者对验证者集的更改进行投票,这听起来会导致类似于我们在 POS 系统中看到的问题——远程攻击。 如果创始成员私钥的阈值被泄露,攻击者能否从创世块写入新的账本历史? 如果是这样,其他节点会接受吗? 目前尚不清楚共识协议是否允许重写旧状态或只是额外的状态。

显卡挖比特币还是以太坊_以太坊和比特币_比特币和以太坊的最小计量单位

白皮书:我们计划逐步过渡到 POS

Jameson Lopp:如果他们能解决未解决的问题。

显着的问题:

治理如何运作?

我们可以看到 Libra 协会是一个成员委员会,需要 2/3 的绝对多数才能做出改变。 他们是唯一被允许铸造或销毁 Libra 硬币的人,但如果有足够的共识,他们可以做出他们想要的任何改变。

是否需要 AML/KYC?

显然不是在协议级别,但 Calibra 钱包声明所有用户都将通过政府颁发的验证 ID。 听起来 Calibra 钱包将是至少一段时间内唯一可用的钱包,因此尚不清楚开发人员和用户是否可以在 Libra 网络上运行不遵守相同标准口径的应用程序。

什么是低收费? 什么是正常操作? 什么是足够的容量?

Calibra Wallet FAQ 承诺手续费低,但这似乎与底层协议在高负载下的运行有冲突。

白皮书:交易费用将是低成本和透明的,特别是如果您要进行国际汇款。 Calibra 将削减费用以帮助人们保留更多的钱。

Libra 真的会向开发者开放吗?

根据实现无许可共识的计划:

白皮书:Libra 区块链将向所有人开放——任何消费者、开发人员或企业都可以使用 Libra 网络,在其上构建产品,并通过他们的服务增加价值。 开放获取确保进入和创新的低门槛,并鼓励有利于消费者的良性竞争。

Jameson Lopp:我怀疑开发人员能否在这个平台上运行他们梦想的任何技术上有效的应用程序。 我读过的任何内容都不能让我相信这个系统会抵制审查,但只有时间才能证明一切!

作者:Jameson Lopp 比特币开发者,Professional Cypherpunk

编译:共享财经马明 编辑:共享财经Neo

以太坊和比特币_比特币和以太坊的最小计量单位_显卡挖比特币还是以太坊

以太坊和比特币_比特币和以太坊的最小计量单位_显卡挖比特币还是以太坊

[重量级]

【行业】