智能合约系列 | 智能合约工程重要环节:十大棋牌游戏形式化验证方法

编辑:十大棋牌游戏 时间:2020-11-05 热度:5829℃ 来源:十大棋牌游戏排行榜 责编: 十大棋牌游戏

北京航空航天大学分布式实验室 北京航空航天大学云南创新研究院 周楚涵 胡凯

形式化验证是智能合约工程的重要环节,它可以成为对合约进行确定性验证的一种技术,通过形式化语言把合约中的概念、判断、推理转化成智能合约模型,可以消除自然语言的歧义性、不通用性,进而采用形式化工具对智能合约建模、分析和验证,进行一致性测试,最后自动生成验证过的合约代码,形成智能合约生产的可信全生命周期。

1. 形式化验证

形式化验证是基于形式化方法相关理论。形式化方法起源于20世纪50年代对编译技术的研究,20世纪60年代发生了“软件危机”,当时针对“软件危机”,主要有两种解决方法:一种是采用合理有效的工程方法来管理和组织软件的开发过程,这也是软件工程的起源;另一种是建立严格的数学推导理论,以指导软件开发过程,这方面推进了形式化方法的深入研究。

形式化方法主要包括形式规约和形式化验证。形式规约是指应用具有精确语法和语义的形式化语言来刻画系统的性质和行为,是设计系统约束和验证系统是否正确的依据;形式化验证是在形式规约的十大棋牌游戏基础上,建立系统的行为及其性质的关联,进而验证系统是否需求的关键性质。形式化验证与形式化规约之间具有紧密的联系,形式化验证就是验证已有的程序P,是否满足其规约的要求),它也是形式化方法所要解决的核心问题。

目前常见的形式化验证方法主要可分为两类:演绎验证和模型检测。演绎验证主要基于定理证明的基本思想,采用逻辑公式描述系统及其性质,通过一些公理或推理规则来证明系统具有某些性质。目前主要的演绎验证工具有:基于Manna-Pnueli证明系统的STeP、TLV、机器定理证明器等。模型检测方法的基本思想是通过状态空间搜索来确认合约是否具有某些性质。即给定一个合约P和规约ψ,生成对应于合约模型M,然后证明M╞ψ,即规约公式ψ在合约模型M中成立,这样就证明了合约P满足规约ψ。常用的模型验证工具有:SMV、SPIN、SDL、UPPAAL等。

模型检测技术是近三十年来最成功的自动验证技术之一,目前被广泛地应用于有限状态系统的验证,包括电路设计和通信协议的分析与验证。根据所要验证模型的规格特点,可以分为复合检验器、时态逻辑模型检测器和行为一致检验器。根据采用的不同的技术可以分为:面向状态的模型检测和符号模型检测。模型检测器的基本原理都是一样的,其工作原理如图1 所示。通常情况下,模型都需要经过迭代验证的过程,才能最终满足验证条件。

转载请注明来源:“ http://www.yhbygd.com/IT/2020/1105/3269.html ”。