Facebook Libra 共识协议 Consensus 简介

译自:官方文档翻译 https://developers.libra.org/docs/crates/consensus。本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行许可。 概述 共识协议通过多个验证器来创建逻辑模型,这个模型实质是个数据库。共识协议下被提交...

2019-07-17 10:51:39

阅读数 6

评论数 0

官方文档翻译《The Libra Blockchain》之执行交易(二)

译自:官方文档翻译《The Libra Blockchain》之执行交易,第三小节。本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行许可。 执行交易 执行一次交易在 VM 内部按照六个步骤有序进行。执行交易与更新账本的两个动作是分开的。先尝试在一部分的序列上执行看交...

2019-07-16 10:50:03

阅读数 48

评论数 0

官方文档翻译《The Libra Blockchain》之执行交易(一)

Libra 协议中,修改区块链状态的唯一方法是执行交易。本节将介绍执行一个交易所必须的条件,定义了交易的结构如何,解释了 Move 虚拟机如何执行一次交易的,还介绍了 Move 语言的关键概念。

2019-07-13 10:34:24

阅读数 56

评论数 0

Facebook Libra 内存池组件(Mempool)简介

内存池 Mempool 是位于内存的缓冲区,那些等待执行的交易便保存于此。 概述 准入控制(AC)模块将交易发送到内存池。在共识提交之前,内存池将交易保留一段时间。添加新交易时,内存池会与系统中的其他验证器(验证程序节点)共享此交易。内存池是“共享的”,因为各个内存池之间的交易都与其他验证器共...

2019-07-04 11:36:50

阅读数 119

评论数 0

Facebook Libra 执行组件(Execution)简介

概述 Libra 区块链是一个复制的状态机。每个验证器都是一个系统的副本。从状态 S0 开始,每笔交易 Ti 更新前一个状态 Si-1 到 Si。每一个 Si 实际是一个 map,映射了账户(以 32 字节地址表示)和该账户所关联的数据。 执行组件输入的交易是有序的交易,通过 Move 虚拟机计算...

2019-07-03 23:31:08

阅读数 40

评论数 0

Move: A Language With Programmable Resources:区块链如何管理数字资产

区块链如何管理数字资产 区块链之抽象 区块链是一个复制的状态机。系统中的复制器称为验证器。系统用户将交易事务发送给验证器。每个验证器都了解如何执行交易,内部状态机就会把当前状态转换为新的状态。 交易详情都是共享的,验证器根据共识协议(Consensus protocol)来执行交易,这些验证...

2019-07-02 15:24:52

阅读数 93

评论数 0

Calibra:一种新型的全球货币数字钱包

Calibra 是一家新成立的 Facebook 子公司,其目标是提供金融服务,使人们能够参与访问 Libra 网络。 第一款 Calibra 推出的产品是 Li​​bra 数字钱包,Libra 是一种由区块链技术驱动的新型全球货币。Messenger、WhatsApp 或其他独立应用程序会整合电...

2019-07-01 19:35:00

阅读数 98

评论数 0

Facebook Libra 网络模块简介

网络 网络组件提供了点对点与其他验证器组件之间的通讯原语。 概述 网络组件专门用于促进共识和共享的mempool协议。目前,它为这些消费者提供了两个主要接口: RPC,用于远程过程调用 DirectSend,用于向单个接收器发送即发消息的消息。 网络组件使用: 用于对等寻...

2019-07-01 15:20:09

阅读数 165

评论数 0

Facebook Move 语言设计目标

Libra 的使命是建立一个简单的全球货币和金融基础设施,赋惠于数十亿人。Move 语言旨在提供安全,可编程的基础。Move 本身必须能够体现 Libra 货币是在一个精确的,可理解的及可验证的规则下治理。从长远来看,Move 必须能 为不同类型的资产及其业务逻辑提供一个完善的财务基础设施。 ...

2019-07-01 11:51:17

阅读数 58

评论数 0

Facebook Libra 存储(Storage)简介

存储 存储模块为 Libra Blockchain 上的整个数据集提供可靠且高效的持久化存储,以及 Libra Core 内部所使用的必要数据。 概观 存储模块旨在实现两个主要目的: 保留区块链数据,特别是验证方通过共识协议达成一致的交易及输出。 为区块链数据的查询提供 Merkle...

2019-06-30 19:35:12

阅读数 160

评论数 0

Facebook Libra 准入控制(AC)简介

准入控制 Admission Control 准入控制(AC)是 Libra 的公共 API,它响应来自客户端的公共 gRPC 请求。 概述 准入控制响应客户端的两种请求: SubmitTransaction - 将交易提交给关联的验证器。 UpdateToLatestLedger...

2019-06-30 13:27:54

阅读数 155

评论数 0

Facebook Libra 加密简介

加密 Crypto 我们在 Libra 中用到的所有加密原语,都实现在 Crypto 加密组件中,它包含:散列(Hashing),签名和密钥派生/生成。 在即将到来的版本中将包含的加密原语(位于 NextGen 目录)有:新的加密 API 来保证类型安全、可验证的随机函数、BLS 签名。 概述...

2019-06-29 17:48:34

阅读数 127

评论数 0

Facebook Move 语言 IR 编译器简介

Move IR 编译器 概述 Move IR 编译器将 Move IR 编译为字节码。 Move IR 编译器将在 Move 中编写的模块和脚本编译为各自的字节码。输出的两种数据类型分别是 CompiledModule 和 CompiledScript。这些数据类型在 file_format.rs...

2019-06-28 13:14:33

阅读数 83

评论数 0

Facebook Move 语言虚拟机 VM 简介

虚拟机 VM Move VM 执行以 Move 字节码表示的交易。它有两个核心包:核心 VM 和 VM 运行时。VM 核心包含 VM 的低级数据类型——主要是文件格式及其抽象。此处还定义了燃气计量(Gas metering???)逻辑抽象。 概观 MoveVM 是具有静态类型系统的堆栈机。 ...

2019-06-28 13:04:09

阅读数 48

评论数 0

为什么 Facebook 的 Move 语言叫 Move?

Facebook 提出 Move,一种安全灵活的 Libra 区块链编程语言。Move 是一种可执行的字节码语言,用于实现自定义交易和智能合约。 Move 的关键特性是能够定义具有受线性逻辑启发的语义的自定义资源类型: 资源永远不会被复制或隐式丢弃,只能在程序存储位置之间移动(Move)...

2019-06-27 13:05:20

阅读数 40

评论数 0

Facebook Move 语言简介

简介 Move 是一种新型编程语言,旨在为 Libra 区块链提供安全及可编程的基础。 语言组织 Move 语言的目录一般由五个部分组成: 虚拟机(VM),它包含了字节码格式、字节码解释器和用于执行区块链交易的基础结构。此目录还包含生成区块链的基础结构。 字节码验证器,它包含一个用于...

2019-06-27 09:42:20

阅读数 261

评论数 0

提示
确定要删除当前文章?
取消 删除