链资讯 链资讯
Ctrl+D收藏链资讯

LIB:技术干货 | 详解Libra区块链及其共识协议_TUF

作者:

时间:

01?

Libra区块链简介

Libra区块链的目标是成为金融服务的基础,包括打造一种新的全球支付系统,满足数十十亿人的日常金融需求。通过对现有区块链解决方案的评估,Libra决定基于下列三项要求构建一个新的区块链:

能够扩展到数十亿帐户,这要求区块链具有极高的交易吞吐量和低延迟等特点,并拥有一个高效且高容量的存储系统。

高度安全可靠,可保障资金和金融数据的安全。

灵活多变,为未来金融服务创新提供动力。

Libra区块链就是为了了全面满足这些要求,并从现有项目和研究中获得的经验教训为基础。Libra区块链的三项核心决策:

设计和使用Move编程语言。

使用拜占庭容错(BFT)共识机制。

迭代改善已广泛采用的区块链数据结构

02?

设计和使用Move编程语言

“Move”是一种新的编程语言,用于在Libra区块链中实现自定义交易逻辑和“智能合约”。由于Libra协会的目标是有朝一日为数十亿人服务,因此Move语言的设计首先考虑到安全性和可靠性。Libra开发团队从以往区块链平台中发生的与智能合约相关的安全事件中吸取经验教训,从而创造的一种新的智能合约编程语言Move。

Move从本质上令人更加轻松地编写符合作者意图的代码,从而降低了出现意外漏洞或安全事件的风险。具体而言,Move从设计上可防止数字资产被复制。它使得将数字资产限制为与真实资产具有相同属性的“资源类型”成为现实:每个资源只有唯一的所有者,资源只能花费一次,并限制创建新资源。

Move语言还便于自动验证交易是否满足特定属性。例如,仅更改付款人和收款人帐户余额的付款交易。通过优先实现这些特性,Move可帮助保持Libra区块链的安全性。Move?允许轻松和安全地定义Libra网络的核心元素,例如支付传输和验证节点的管理。最后,Move?是将合规机制(例如促进旅行规则合规和协议级制裁筛选的机制)构建到Libra网络中的一种方式。

传统金融巨头Euroclear最快将于今年推出基于分布式账本技术的债券结算平台:金色财经报道,传统金融服务设施巨头 Euroclear 的法律顾问 Bart Garré表示,最快可能在今年推出其基于分布式账本技术(DLT)的债券结算平台,该平台旨在提高债券结算过程的效率和透明度。

该倡议建立在最近由 Euroclear 与法国中央银行牵头的一项试验的基础上,该试验将区块链用于债券交易,并使用中央银行数字货币作为支付,Euroclear 将把试验扩展到涵盖安全代币的实时转移。Euroclear 称目前遇到了许多现有的法律假设,包括什么构成账户或转账信息,以及财产法中的概念。[2023/3/30 13:35:34]

Libra协会致力于对智能合约实施适当的审查和风险控制。首先,只有协会批准和发布的智能合约才能与Libra支付系统直接交互。随着时间的推移,协会将探索适当的控制措施,以允许第三方方发布智能合约。

03?

使用拜占庭容错(BFT)共识机制

Libra区块链采用了基于LibraBFT共识协议的BFT机制,来实现所有验证者节点就将要执行的交易及其执行的顺序达成一致。这种机制实现了三个重要目标:

首先,它可以在网络中建立信任,因为即使某些验证者节点(最多三分之一的网络)被破坏或发生故障,BFT共识协议的设计也能够确保网络正常运行。

第二,与其他一些区块链中使用的“工作量证明”机制相比,这类共识协议还可实现高交易处理量、低延迟和更高能效的共识方法。

第三,LibraBFT协议有助于清楚地描述交易的最终性,因此当参与者看到来自足够数量验证者的交易确认时,他们可以确保交易已经完成。

BFT的安全性取决于验证者的质量,因此协会将对潜在验证者进行尽职调查。Libra网络的设计以安全第一为原则,并考虑到了复杂的网络和关键基础设施攻击。

北京市:深化区块链等新技术应用 提高精准防疫水平:5月17日下午,北京市发布了《关于加强首都公共卫生应急管理体系建设的若干意见》。按照《意见》的要求,北京市将强化科技支撑。优化生物安全领域科研力量布局,强化疫情防治科技储备,统筹协调各方科研力量,发挥中关村企业作用,加强核心技术攻关,抓紧诊断试剂、药物、疫苗和医疗装备研发。进一步发展互联网医疗,加快智慧城市建设,深化大数据、云计算、区块链、人工智能等新技术的应用,提高精准防疫水平。(证券时报e公司)[2020/5/17]

该网络的结构是为了加强验者运行软件的保证,包括利用关键代码分离等技术、测试共识算法的创新方法以及对依赖关系的谨慎管理。最后,Libra网络将定义在出现严重漏洞或需要升级时重新配置Libra区块链的策略及过程。

除了在这些情况下确保系统的安全恢复之外,这种准备将阻止攻击,因为攻击者将知道他们的行为可以被反击。

04?

迭代改善已广泛采用的区块链数据结构

为了保障所存储的交易数据的安全,Libra区块链中的数据会受到默克尔树(Merkle?tree)的保护,它是一种已在其他区块链中被广泛使用的数据结构,可以侦测到现有数据的任何变化。与以往将区块链视为交易区块集合的区块链项目不同,Libra区块链是一种单一的数据结构,其可?期记录交易历史和状态。这种实现方式简化了访问区块链的应用程序的工作量,允许它们从任何时间点读取任何数据,并使用统一框架验证该数据的完整性。

上述设计决策的一个结果是,Libra区块链将提供公共可验证性,这意味着任何人(验证者、Libra网络、虚拟资产服务提供商(VASP)、执法部门或任何第三方)都可以审核所有操作的准确性。交易将以加密方式签名,以便即使所有验证者都被破坏,也不能接受来自具有安全签名密钥的伪造交易。该设计与硬件密钥管理和高价值密钥的离线存储兼容。

动态 | 中国人民银行乌鲁木齐中心支行举办“分享区块链技术,提升履职质效”主题党日活动:据中国人民银行官网消息,12月3日,中国人民银行乌鲁木齐中心支行科技处联合国际收支处等6个处室开展“分享区块链技术 提升履职质效”主题党日活动。各党支部负责人和党员共65人参加活动。科技处党支部书记许健在会议上围绕区块链相关知识开展了交流学习座谈,概述了区块链技术的起源,讲解了区块链核心技术和特点,分析了区块链的应用场景,并探讨了未来的监管重点。乌鲁木齐中心支行党委副书记、副行长阿达来提·吐尼亚孜参加并主持活动,并强调总书记在主持中央局第十八次集体学习时指出,要把区块链作为核心技术自主创新的重要突破口。[2019/12/18]

上述设计决策的另一个结果是,Libra区块链将支持一种隐私方方法,该方法将考虑网络上参与者的多样性。协会会监督Libra区块链协议和网络的发展,并在考虑适用的监管要求的同时,不断评估新技术以增强区块链上的隐私合规性。

05?

LibraBFT详解

5.1概述

Libra的共识机制采用的是LibraBFT共识,是一个为Libra设计的健壮、高效的状态复制系统。它基于一种新型的BFT共识算法,HotStuff(BFTConsensusinLensofBlockchain),在扩展性和一致性上达到了较高的水平。LibraBFT在HotStuff的基础上引入显示活跃度的机制并提供了具体的延时分析。

LibraBFT在3f+1个验证节点之间收集投票,这些验证者可能是诚实的节点也可能是拜占庭节点。在网络中有2f+1个诚实节点的前提下,Libra能够抵御f个验证节点的双花攻击和分叉攻击。

声音 | 人大财政金融学院副院长:深圳有技术基础又有相应的能力研发数字货币:据人民网报道,近日,中共中央、国务院发布关于支持深圳建设中国特色社会主义先行示范区的意见,支持在深圳开展数字货币研究与移动支付等创新应用。对此,中国人民大学财政金融学院副院长赵锡军分析称,人民币国际化上,深圳作为试验区,引进海外资金来深圳进行加工贸易、投资等,已是跨境交易的一个重要起始点,是国外资金引进来、国内资金走出去的一个重要的点。在地理位置上毗邻香港这个人民币最大离岸中心,和香港之间资金联系非常紧密。在数字货币的研究方面,赵锡军表示,深圳在改革开放过程中发展出来很多产业,聚集了像华为等一大批在高新技术、互联网、通讯等领域的高科技企业,代表新一代研发技术的基础,同时又是金融中心,所以从这个意义上讲,有基础又有相应的能力来展开金融和技术相结合的研究和探索。[2019/8/21]

LibraBFT在一个有全局统一时间,并且网络最大延时可控的PartialSynchrony的网络中是有效的。并且,LibraBFT在所有验证节点都重启的情况下,也能够保证网络的一致性。

为了能够更好地理解LibraBFT,我们回顾一下PBFT和HotStuff共识协议。

5.2PBFT

原始的拜占庭容错系统由于需要展示其理论上的可行性而缺乏实用性,另外需要额外的时钟同步机制支持,算法的复杂度也是随节点增加而指数级增加。CastroandLiskov在1999年提出实用拜占庭容错系统,降低了拜占庭协议的运行复杂度,从指数级别降低到多项式级别,使拜占庭协议在分布式系统中应用成为可能。

PBFT是一类状态机拜占庭系统,要求整个系统共同维护一个状态,所有节点采取的行动一致。为此,需要运行三类基本协议,包括一致性协议、检查点协议和视图更换协议。视图转换协议保证共识协议的活性。当主节点出故障时能保证共识能继续进行。PBFT的视图转换协议是非常复杂的,涉及到很多消息的重传。HotStuff的最重要的改进,主要是针对视图更换的协议。

阿尔罗萨将开发最新的钻石供应链 用区块链技术追踪钻石来源:派波特这家矿商告诉Rapaport新闻,阿尔罗萨正考虑将区块链或其他技术理念应用于粗糙和抛光的石头上,以应对冲突钻石和未公开的合成材料的挑战。俄罗斯公司发言人上周在一封电子邮件中表示:“如果行业设法建立一个跟踪系统,它将解决目前面临的一些问题和挑战。”阿尔罗萨目前正在研究与数字分类账相关的选项,并在俄罗斯市场上迈出了第一步,提供了一份纸质证书,该证书包含一个独特的身份号码,该号码追溯了在其抛光部门制造的每一块石头的来源。该文件包括公司开采粗石的地点和时间的信息。[2017/12/26]

?5.3HotStuff

HotStuff的基本假设是系统有固定的节点数n=3f+1,其中f是系统能容忍的最大拜占庭节点数。系统通信是点对点的认证和可靠通信。网络通信的假设是半同步,也就是说,网络有一个知道的延迟D,以及一个不知道的全网稳定时间,当GST过后,任意两个节点之间的通信都将在D时间内完成。HotStuff能总保证正确性,在GST后的消息时延在一定限度内能保证活性。

HotStuff采用门限签名机制,门限设置是。n个节点中所有的节点共用一个公钥,但每一个节点有自己的私钥。每个节点用自己的私钥签名消息m,叫部分签名消息,多个节点的部分签名消息可以用来生成一个联合签名消息,当至少有k=2f+1个节点提供部分签名消息时,其它任何一个节点能用公钥验证该联合签名消息。其中f是系统能容忍的拜占庭节点总数,n=3f+1。

HotStuff论文中提出一个“认证复杂度”的概念。认证复杂度简单来说,统计协议交互时通信的认证消息数,也就是部分签名或联合签名消息的个数。

HotStuff两个重要的优点

一个是linearity,指的是通信的复杂程度和节点数成线性关系;

另一个是responsiveness,指的是当网络通信成为同步的时候,HotStuff能产生正确的Leader来推动协议在网络延迟的实际值内而非最大值达到共识。

HotStuff在原先诸多的BFT共识协议中提升了效率,降低了复杂度。基于这些特性,HotStuff适合于构建大规模的状态复制服务。因此,不难看出,Libra从众多的区块链共识算法中挑选HotStuff,看中的是HotStuff的效率、线性的扩展性,以及拜占庭容错的安全性。

这也体现了Libra的平衡术–在去中心、安全、扩展性这个棘手的区块链三难问题上,巧妙的选择一个平衡点。

5.4LibraBFT

严格说来,LibraBFT是基于HotStuff的一个变种,叫链式HotStuff。链式HotStuff是在基本HotStuff上引入流水线概念,进一步提升效率的一个改进共识协议。libraBFT最初会选择一些在不同地理上分布的创始成员做共识节点,以后逐渐的,共识节点会对外开放,并基于libra稳定币的多少来选择共识节点,也就是转变成PoS机制。

libraBFT的共识流程是分为不同轮次,每一轮中一个Leader主节点被选出。主节点会提议一个区块,里面包括多个交易。该区块将广播给其它共识节点。其它共识节点会验证区块里的交易,并对其投票。主节点收到大多数节点的投票后,主节点把确认消息发给所有共识节点确认。如果主节点没收到大多数投票,或者主节点出现故障,副本共识节点的定时将超时,副本节点会发起新的一轮提议。

libraBFT在HotStuff基础上的改进主要在于提供一个详细的参与同步轮次的Pacemaker设计和实现。并提供对实际交易确认的活性分析。LibraBFT提供对共识节点投票权力的重配置机制。同时它给出了对提议节点和投票节点激励的机制。白皮书给出了如何检测投票节点破坏正确性的行为,为今后在协议中加入惩罚机制打下基础。同时白皮书也详细讨论如何做同步,使得投票节点能同步它们的状态。libraBFT白皮书采用Rust语言来描述协议。

在LibraBFT中,为了更好地支持Libra生态系统的目标,LibraBFT以多种方式扩展和调整了核心HotStuff协议和实现。重要的是,LibraBFT重新定义了安全条件,并提供了安全、存活度和更高响应度的扩展证明。LibraBFT还实现了一些附加功能。

首先,通过让验证器对块的结果状态(而不仅仅是交易序列)进行集体签名,LibraBFT使协议更能抵抗非确定性错误。还允许客户端使用法定人数证书来验证读取的数据库。

其次,LibraBFT设计了一个发出明确超时的起搏器,验证器依靠法定人数来进入下一轮-不需要同步时钟。

第三,LibraBFT打算设计一个不可预测的领导者选举机制,其中一轮的领导者由最新提交的块的提议者使用可验证的随机函数VRF确定。这种机制限制了攻击者可以针对领导者发起有效拒绝服务攻击的时间窗口。

第四,LibraBFT使用聚合签名来保留签署仲裁证书的验证者的身份。这使我们能够为有助于仲裁证书的验证人提供激励,聚合签名也不需要复杂的密钥阈值设置。

5.5实现细节

LibraBFT共识组件最主要的是实现了Actor程序模型,它使用消息传递在不同的子组件之间进行通信,其中tokio框架用作任务运行时。Actor模型的主要例外是(因为它是由几个子组件并行访问的)是共识数据结构BlockStore,它管理块、执行、仲裁证书和其他共享数据结构。共识组件中的主要子组件是:

TxnManager是内存池组件的接口,支持拉取交易以及删除已提交的交易。提议者使用来自内存池中的按需拉取交易来形成提议块。

StateComputer是访问执行组件的接口。它可以执行块,提交块,并可以同步状态。

BlockStore维护提议块树,块执行,投票,仲裁证书和持久存储。它负责维护这些数据结构组合的一致性,并且可以由其他子组件同时访问。

EventProcessor负责处理各个事件(例如,process_new_round,process_proposal,process_vote).它公开每个事件类型的异步处理函数和驱动协议。

Pacemaker负责共识协议的活跃性。它由于超时证书或仲裁证书而改变轮次,并在它是当前轮次的提议者时提出阻止。

SafetyRules负责共识协议的安全性。它处理仲裁证书和分类信息以了解新的提交,并保证遵循两个投票规则—即使在重启的情况下。

所有共识消息都由其创建者签名,并由其接收者验证。消息验证发生在离网络层最近的地方,以避免无效或不必要的数据进入协商一致协议。

06?

总结

Libra区块链的架构设计汲取了Bitcoin和Ethereum的两大区块链技术的精华,使用了新的智能合约语言。如果把Bitcoin的脚本指令比作汇编语言,那么Ethereum的Solidity就是类似于JavaScript的动态语言,汇编语言效率最高但难于编写,动态语言灵活强大但容易产生难于觉察的bug,这两种语言用来编写和金融相关的业务都不是最优的。Move语言借鉴了Rust语言的所有权管理机制,在编写智能合约时既保证了安全性又不失灵活性。

libraBFT基于链式HotStuff,其确认规则遵从3-chain的确认规则。libra能在众多的共识协议中选择HotStuff,显示了libra团队的眼光,以及在区块链三难问题上巧妙的平衡术。libraBFT继承了HotStuff,使得它的共识协议具有正确性,在半同步网络下的活性,最终性;同时具有通信线性复杂度和响应性。

Libra的实现也展示了简易性和模块化的实现。同时也体现了sustainability,不需要工作量证明以降低能耗。

参夸文献:

《Libra白皮书2.0》

《LibraBFT共识协议》

来源丨BitTribeLab?作者丨孙海涛

标签:LIBLIBRA区块链TUFDaiquilibriumLIBRAF币开发区块链数字货币TUF Token

狗狗币价格热门资讯
SSE:接棒三星、Salesforce ,云计算巨头VMware参与Digital Asset C+ 轮融资_ALA

据DigitalAsset官方博客报道,7月14日,开源智能合约语言DAML创建者DigitalAsset宣布,该公司C轮融资的投资者新增云计算巨头VMware.

比特币:巴比特独家 | 四川矿场考察记,揭秘“460万千瓦”负荷的矿业帝国_DAGO

从成都出发,沿着G93国道,小面包载着我们一行十多个人一路西行,没过多久,沿途的风景由平原变成了丘陵,道路也开始曲折回旋起来.

加密货币:都2020年了,DAO究竟能做些什么?_加密货币市场行情

这是我今年在EthCC演讲的主题,年复一年,DAO越来越受到加密货币社区甚至其他群体的关注,但我们距离DAO的黄金时期还很遥远.

BFT:DeFi 锁仓量破40亿,Uniswap 日成交量破1亿,牛市的发动机?_TST

昨日BTC上涨突破1万美元的关口,市场一片欢声雀跃。 ???? 朋友圈,随处可见比特币破万的K线图。毕竟市场被压抑的太久,急需一场牛市来解救。于是也有声音说,牛市开启了.

EFI:观察|如何理解Defi总市值突破100亿美金?_Valuedefi vSWAP

19日,DeFi的总市值达到了95亿美金之高,短短1日,DeFi就突破了100亿美金大关。但DeFi的总市值远不止这些.

比特币:比特币破万,我们距离牛市还有多远?_EFI

比特币上次破万是在6月,刚摸到1万的尾巴就掉了下来。这次,比特币两天之内接连突破1万美元、1.1万美元,市场情绪终于从迟疑变为大胆地欢呼雀跃,顺便喜提一个微博热搜第十.