火星链 火星链
Ctrl+D收藏火星链
首页 > Gate.io > 正文

SPE:技术 | 形式化验证Gasper共识机制的终局性(finalization)

作者:

时间:1900/1/1 0:00:00

Gasper是一个由信标链协议实现的抽象的权益证明协议层。Gasper的关键部分就是一套终局性机制,用于保证交易的持存性和系统的不间断运作不会被攻击破坏。

我们很高兴宣布,RuntimeVerification?和以太坊基金会长久合作中的另一大里程碑圆满成功:我们开发了一套形式框架来模拟和验证信标链协议,并成功形式化地证明了Gasper终局性的正确性;并且,我们还使用这些结果证明了信标链的Gasper抽象实现同样具备这些属性。模型和证明脚本都可以在此处找到。

在本文中,我们希望介绍这一成就的第一部分:验证Gasper的属性。所以,什么是Gasper?如何能形式化地验证其属性?这种形式化验证有何意义?

Gasper

信标链协议是一套新的权益证明协议,是以太坊未来的重大升级“以太坊2.0”的核心。在信标链协议中,参与的节点都在系统中存有保证金。验证者通过向网络提交“见证消息”来证实区块的有效性并为其多种属性投票。信标链协议本身包含了多种工具,以帮助验证者们对区块链的最新状态达成共识。

Gasper?为信标链协议中的终局性工具提出了一套抽象但准确的描述,还定义了分叉选择规则;终局性工具用于确定哪些区块应被参与者认定为已经确定的、不可更改的,分叉选择规则则用于在链产生分叉时确定哪个分叉是主链。Gasper中的终局性一般化了始创于《CasperFriendlyFinalityGadget(CasperFFG)》论文中的概念,让“终局化”获得了更通用的形式。

福州一批新建项目将使用区块链技术 包括渣土车监管平台等:4月14日消息,针对游雄峰代表提出的关于推广区块链技术应用和制定相关政策法规的建议,福州市大数据发展管理委员会近日表示,福州市积极推进区块链落地应用,渣土车监管平台等一批新建项目中将使用区块链技术。 

在加强区块链行业监管、制定和完善相关政策法规方面,福州市成立了区块链发展工作领导小组。市政府也加强了对虚拟货币交易场所、首次代币发行排查清理,协调金融机构和非银行支付机构不得开展与代币发行融资交易相关的业务,加强风险防范。此外,福州市政府已规划在滨海新城建立区块链监管沙盒,进一步加强区块链行业监管研究。(福州新闻网)[2020/4/14]

合理化与终局化

终局性概念仅与?

“检查点区块”起点处的区块)有关。见证消息中有一部分叫?

“合理化投票”,验证者在合理化投票中将一个来源检查点区块和稍后的一个目标检查点区块关联起来,直观地表明发起该见证消息的验证者认为“我们可以从来源检查点的状态移动到目标检查点的状态”。实际上,一份合理化投票表明了:发起投票的验证者;来源检查点及其合理化高度;目标检查点及其合理化高度。

当且仅当条件满足:来源检查点?B0?已得到合理化;大多数人同样投票给?B0-B1?来源-目标对;则目标检查点?B1?就经由来源检查点?B0?得到了合理化。

当且仅当大多数验证者将?B0?与其K代子孙检查点?Bk?关联起来,则?B0?获得K阶终局性,且B0与Bk之间的所有检查点都被终局化。注意,创世区块本身被认为既已得到合理化,又有终局性。下图演示了Gasper中的合理化和终局化概念。

新华网:支付宝的实名认证、区块链等技术 激活城市消费潜力:截至目前,全国已有超十省、市推出消费券等鼓励措施,涵盖餐饮、文旅、住宿、体育、汽车、家电等生活消费服务众多方面。通过数字化技术实现及时、精准的消费券,激活消费潜力尤为重要。依托阿里长期商业领域积累以及支付宝的实名认证、区块链等技术,消费券可实现“一城一策、按需定制”、“灵活可调整”、“公平可追溯”,在激活消费的同时成为商家数字化的助推器。(新华网)[2020/3/27]

罚没条件

如果验证者尝试偏离协议要求、提交自相矛盾的投票,则该验证者会被惩罚:其保证金会被扣除一大部分。Gasper定义了两个条件来定义何谓自相矛盾的投票:

双重投票:验证者发布了两个截然不同的投票,但两个投票的目标高度是同一个高度。

环绕投票:验证者发布的一个投票所关联的两个检查点恰好在自己所发布的另一个投票的两个检查点高度范围内。

发起双重投票的验证者被认为违反了第一罚没条件;而发起环绕投票的验证者则违反了第二罚没条件。不论是哪种情况,违反规则的验证者都会被扣除大量保证金。

正确性

与其它拜占庭容错型协议相同,Gasper协议的一个关键底层假设是绝大多数验证者是诚实的、会遵循协议的要求。在此假设下,Gasper有两大基本属性:

动态 | 日本SBI集团加密交易所采用了新技术 以帮助满足FATF标准:日本SBI集团旗下加密交易所VC Trade目前正在整合新技术,以帮助其遵守金融行动特别工作组(FATF)今年6月发布的国际客户验证标准。该解决方案由区块链安全公司CoolBitX提供,该公司开发了一款基于其KYC和反 (AML)的加密货币交易和安全解决方案钱包产品。(coindesk)[2019/8/8]

可追责的安全性:不会有两个属于不同分叉的区块都被终局化,除非有至少1/3的验证者被罚没;

似然活性:无论区块链过往发生了什么事,区块的终局化进程永远不会陷入僵局。

此外,在验证者集合会动态变化的环境中,第三种属性量化了在有人违反协议规则时可被罚没的保证金体量:

可罚没下限:只要能够使用协议外条件来控制验证者的激活和退出参数条件,就能证明可被罚没的保证金数量有一个下限。

动态验证者集合引入了另一个有挑战性的问题:系统不再那么能够可靠地惩罚恶意验证者,因为他们可能会在作恶之后、保证金被实际罚没之前离开网络。而可罚没下限属性使得调整活跃验证者集合的可变幅度、维持最低水平的可追责性成为可能。

验证Gasper的终局性

Gasper旨在为终局性提供一个数学化的、精确的、可用来形式化地证明其正确性的描述;这种正确性也是证明信标链协议安全性的关键。以太坊平台正日渐被用作大型金融交易系统的股价,更突出了安全性保证的前所未有的重要性。

与以太坊基金会通力合作,我们已经使用?Coq?证明助手,形式化了Gasper在动态验证者集合一般条件下的终局性机制。我们在这一条件下指出并证明了?Gasper?的所有三种关键属性:可追责的安全性、似然活性以及可罚没下限;所有证明都使用了同一个Coq模型。

金色财经现场报道 SEC执法部网络部门负责人:SEC不监管技术 而是管理金融行业和市场:金色财经现场报道,今日在Coindesk 2018共识会议上,SEC执法部网络部门负责人Robert A. 表示:“SEC鼓励筹集资金的不同方式,我们不监管技术,而是管理金融行业和市场。SEC一直在与行业内人士会面,与员工见面,谈论他们的想法,新的发展,并就新的技术进行讨论。”Cohen还表示,主要问题在于加密货币或人们拥有的任何资产是否是证券,SEC已经给出了相关指导。他认为如果一个公司或个人在遵守法律方面做出了足够诚意的努力,而且一步到位,那就是他们正在与监管机构进行对话。然而不幸的是,当人们没有做出诚意的努力来遵守法律时,很明显SEC就需要介入。我认为对我们的投资者保护措施是我们市场如此强大的原因的一部分,投资者保护让人们感到安慰,认为这是一个他们可以投资的行业。我们不能仅仅想把坏人赶到海外,这会使我们的使命更加艰难。[2018/5/16]

对协议的演绎论证给了我们对相关主张正确性和安全性的极大信心,因为演绎论证保证没有未经指明的假设,也没有无效的演绎推理步骤。它也明确了为使论点成立所需的所有假设。形式化过程也能反哺协议的描述,使协议的描述能更准确、更完整。

这里我们仅对这一成就给出概要的说明。完整的细节可见:

该项目的技术报告

该项目的Github代码库

建模及验证方法

第一步是开发一个协议的模型,让我们能够表达出所有我们希望形式化地指出并证明的关键属性。这个模型建立在我们之前验证CasperFFG的安全性和活性的

工作基础上。

这一模型有三个主要的结构化模块:

卫士通表示正在研发区块链技术 股价上涨5%:卫士通(002268)11日午间在互动平台表示,公司在区块链领域有专门人员进行技术研究。卫士通股价午后大涨,截至发稿上涨近5%。[2018/1/11]

验证者和团体。验证者被抽象地表示为一个有限型的成员,写为?Validator:finType?。每个验证者都有一份保证金;这一事实我们建模成一个未解释的函数?stake:{fmapValidator->nat},保存验证者与其保证金数量的映射。此外,给定一个验证者集合,其权重?wt?定义为该集合中所有验证者保证金数量的总和:

\sum?是求和运算符;stake.?则给出了相应于验证者v的保证金数量。

wt?函数的几个属性源自其定义,例如:空验证者集的权重必然为0,两个互不相交的集合的合集的权重就是各自权重的和。这些属性在涉及可罚没下限属性中关于权重的推理时会派上用场。

此外,因为我们要模拟动态的验证者集合,也就是活跃验证者的集合可能会随区块发生改变,我们声明了一个抽象的映射?vset:{fmapHash->{setValidator}},给出一个区块处的活跃验证者集合。现在,使用?vset?和?wt,我们就能定义什么是绝对多数集合:

在某个区块处,如果活跃验证者集合的一个子集的权重超过整个集合权重的2/3,则该子集就是一个绝对多数集合。

区块树。我们用区块哈希的有限型来模拟一个区块?Hash:finType,另外,用?genesis?代表创世区块。我们使用符号?h1<~h2?这样的符号来表示区块父子关系,以此模拟检查点区块树。

接下来我们使用?h1<~*h2?来定义祖先关系,h1?就是?h2?的祖先,而?h2?就是?h1?的后代。至于祖先关系的属性,比如祖先的祖先也是祖先,与父子关系的属性类同。

全局状态。状态可表示为由合理化投票组成的有限集合,投票的形式是?(v,s,t,s_h,t_h),而?v?是发起投票的验证者,s?和?t?是TA支持的来源区块和目标区块,而?s_h?和?t_h?是它们的见证高度。某一个投票是否有人发起过可通过一个布尔成员断言确定:

实例规范

基于这些定义以及它们相应的属性,我们定义出了模型中的所有其它结构和属性,包括罚没条件、团体交集属性,还有合理化以及终局化。举例而言,在一次违反协议的事件中,罚没某个团体的属性可使用如下的抽象成员约束而得到定义:

该命题指出,罚没一个团体意味着,在某些区块?bL?和?bR?处存在着两个绝对多数团体?vL?和?vR,这两个团体的交集就是被罚没验证者的完整集合。注意,在活跃验证者集合一直固定的特殊条件下,这些绝对多数集合的交集的权重至少是所有保证金的1/3。

另一个例子是一个终局化分叉的定义:

该命题指出两个相互矛盾的区块?b1?和?b2?都被终局化了。这两个区块可以是在任意合理化高度的时候被任意长的链终局化的。

这些定义和结果组中被用来指出和证明可追责的安全性、似然活性以及可罚没下限三种定理。为清楚起见,我们还用下式重新定义了可追责安全性定理的表述:

这个定义很简单,只是说:如果安全性被打破,那必定意味着某个验证者集合会被罚没。这个证明机械化了Gasper给出的非正式论证,并展示了为什么分叉获得终局化就意味一定有两个绝对多数团体违反了其中一条罚没条件,因此其交集可被罚没。

我们的技术报告描述了形式化过程以及这些属性的证明,而我们的项目代码库提供了完整的详述。

继续前进

在本文中,我们讲解了RuntimeVerification与以太坊基金会合作成就的第一部分。这第一部分乃是形式化Gasper并证明其关键的三种属性:可追责的安全性、似然活性以及可罚没下限。我们成就的第二部分,在本文中还未涉及的,是展示如何将这些结果代入更加精细的模型中,给出一个信标链状态转换函数的抽象版本。我们后面会用另一篇文章来展示这一成果。

完成这个里程碑还意味着我们向这场合作的终极目标迈出了重要的一步。

我们期待在这项工作上与以太坊基金会继续合作。在这次接触中,我们对以太坊基金会的几位专家深为感激:DannyRyan、CarlBeekhuizen、MartinLundfall、YanZhang以及AdityaAsgaonkar。

原文链接:?https://runtimeverification.com/blog/formally-verifying-finality-in-gasper-the-core-of-the-beacon-chain/作者:?MusabAlturki翻译:?阿剑

标签:ASPSPEGASPGASKaspaSperaxGasify

Gate.io热门资讯
FTX:巴比特专栏 | 寻找区块链行业的投资圣杯,牢牢抓住这一点

区块链是新兴行业,是接下来5年、10年甚至30年最大的风口之一,它背后对应着人类从物质社会向数字社会迁徙的大趋势.

1900/1/1 0:00:00
coinbase:巴比特专栏 | 区块链的安全,谁来保障?

作者:Larry,黄连金近几年,区块链技术的发展非常迅猛,安全形势也越来越严峻,仅安全事件导致的直接经济损失就高达几十亿美元,给行业带来了巨大的经济损失和惨痛的教训.

1900/1/1 0:00:00
数字资产:谷燕西:未来基于区块链的证券市场不再有场内和场外交易之分

在未来的基于区块链的数字金融生态当中,交易不再像现在这样的有场内和场外交易之分。未来的数字金融生态会建立在同一个金融基础设施之上。这个基础设施既支持点对点的交易方式,也支持中心化的撮合交易方式.

1900/1/1 0:00:00
数字资产:谷燕西:从计划上市的Coinbase看未来的数字资产交易所

美国的加密数字货币交易服务交易平台Coinbase现在正在美国申请上市。Coinbase成立了8年,在全球范围内其加密数字货币的交易量是排名第三.

1900/1/1 0:00:00
加密货币:期货未平仓合约创历史新高,以太坊能否再成牛市之王?

近日,伴随着黄金、白银价格屡创新高,有“数字黄金”之称的比特币也没辜负期望,站上一万美元大关。在主流币和山寨币的联动上涨下,加密货币市场持续走强,成为一道靓丽风景线.

1900/1/1 0:00:00
SDC:专访 | Circle CEO: 稳定币正构建新型金融服务模式

作为一家新型金融服务公司,Circle曾寄希望于通过CirclePay打通法币与加密货币的交易和转化,建立一个真正全球化的支付网络.

1900/1/1 0:00:00