Libra 从基本的设计结构和流程上,应该是选择了一条积极稳妥的技术路线,立足于现有成熟技术进行部分创新,这也符合其超大规模应用的特点。
Libra与数字美元分别代表了两股力量。
文章首先概述了 JMT 在 Libra 中扮演的角色,作用,及其主要的特征;然后重点阐述其接口以及内部实现;最后,拿它和以太坊的 MPT 树做对比,聊一聊它的优缺点。
Libra 依然存在很多不足。比如,富有争议的共识机制、计算溢出处理的因循守旧、实现语言的单一依赖、伪随机数问题、宣称的同地址私钥替换技术尚未落地等。
智能合约是区块链领域大家一直比较关注的主题,本文试图从智能合约的演进角度分析 Libra 的 Move 合约要解决的问题,以及其架构设计,也就是回答『 Libra 为什么要重新设计一种编程语言?』这个问题。
本文描述如何在Move中间表示(IR)中编写事务脚本和模块。IR是即将到来的Move源代码语言的早期(且不稳定)先驱。Move IR是一个覆盖于Move字节码之上的薄薄的语法层,用于测试字节码验证器和虚拟机,它对开发人员不是特别友好。它的级别足够高,可以编写人类可读的代码,但又足够低,可以直接编译以移动字节码。
既然决心要扩大知名度,那么免不了要偶尔蹭蹭热点,恰好我之前就已经给很多人说过Hotstuff,同时正好也在之前的专栏里介绍过BFT,所以正好可以顺理成章地讲一下LibraBFT。
Libra 区块链的目标是成为金融服务的坚实基础,已满足全球数十亿人日常财务需求的全新的全球货币。Libra 区块链是从零开始构建,其优先考虑扩展性、安全性、存储、吞吐量效率及未来的适应性
Libra白皮书技术解读
Libra中采用的椭圆曲线是ED25519,而不是像以太坊比特币使用的是secp256k1. 虽然有不同,但是从本质上来说他们都是椭圆曲线,基本性质都是完全相同的.因此适用于S256曲线的VRF算法在Libra中也是相通的.
Libra
ED25519
secp256k1
S256
内存池mempool模块解读第三篇,这部分我主要研究mempool中的节点间Tx同步. 关键代码都位于shared_mempool.rs中.
shared_mempool.rs
mempool模块对于Tx的管理核心全部集中在TransactionStore这个结构,他对外对接的是CoreMemPool结构. 从TransactionStore可以清楚看出缓冲池中Tx增删改查的逻辑.
TransactionStore
CoreMemPool
作为缓冲池,我们先大致说一下这几个功能要考虑的问题.
Libra 内存池(Mempool)模块主要用于缓存未打包的合法交易,该模块和比特币,以太坊源码中的TxPool功能等价,只要包含两个功能:
因为Libra使用的是不会分叉的PBFT共识,所以缓冲池的实现以及管理要简单许多.
根据Libra的架构图,准入控制模块(AC:admission control,本文中简称AC模块)是位于验证器(Validator)与普通用户交互的入口。
这篇文章目的是打通Libra CLI 命令行工具与底层数据库模块libradb之间的关系 Libra Cli指的是 Libra上的第一笔交易 中提到的命令行工具。 libradb 指的是storage/libradb模块 。
Libra Cli
libradb
storage/libradb
Libra数据存储使用的RocksDB这个KV数据库.并且Libra存储和以太坊基本上思路是一样的,就是一个MPT树来保存Libra这个超级状态机.
因为RocksDB中除了KV以外,还存在着ColumnFamilyName这一项,这个用起来有点像Bucket.
Protobuf是一种平台无关、语言无关、可扩展且轻便高效的序列化数据结构的协议,可以用于网络通信和数据存储,本文看看它如果应用在 Libra 中。
Libra 是Facebook 牵头发布的基于稳定币的区块链项目,大家可以通过社区翻译的[Libra 中文文档](https://learnblockchain.cn/docs/libra/docs/welcome-to-l
Facebook最近发表了许可链项目Libra,其中的最大亮点是Move语言。 下面我们从技术视角解读一下“Move: A Language With Programmable Resources”这篇白皮书,供大家参考。
为了便于理解,我们拿比特币、以太坊和Libra来做一个对比。
这几天应该都被Libra刷屏了。Facebook Libra将在2020年底会推出。这里暂且不详细来讨论Libra的意义和阶段性影响。目前来看 Libra 满足了人们进入区块链时代的阶段性的需求,至于如何发展持续保持关注。笔者尝试搭建Libra环境。
Libra 白皮书中英文对照版
扫一扫 - 使用登链小程序
106 篇文章,279 学分
3 篇文章,263 学分
54 篇文章,219 学分
13 篇文章,196 学分
16 篇文章,150 学分