[发明专利]一种高度自动化的智能合约形式化验证系统及方法有效
申请号: | 201810790872.0 | 申请日: | 2018-07-18 |
公开(公告)号: | CN108985073B | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 杨霞 | 申请(专利权)人: | 成都链安科技有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06Q40/04 |
代理公司: | 成都四合天行知识产权代理有限公司 51274 | 代理人: | 王记明 |
地址: | 610000 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种高度自动化的智能合约形式化验证系统及方法,包括:步骤001:将智能合约功能需求描述文档转换为使用非自然语言描述的智能合约功能需求规范文档,智能合约功能需求规范文档内容包括目标合约功能规范描述和安全属性描述;步骤002:建立形式化验证规则模型库。步骤003:通过自动化建模工具对合约源代码和/或字节码进行自动化建模;步骤004:对步骤003生成的抽象语法树解析,为代码中常量、变量分配内存地址;步骤005:形式化证明。本发明适应于多种的高级编程语言编写的程序代码,也适应多种形式化语言,同时提供源代码建模和字节码建模两种自动化建模方式,能够针对用户的不同建模需求进行建模,进一步提高验证效率。 | ||
搜索关键词: | 一种 高度 自动化 智能 合约 形式化 验证 系统 方法 | ||
【主权项】:
1.一种高度自动化的智能合约形式化验证系统,其特征在于,包括形式化验证规则模型库、智能合约编译器、自然语言解释器、自动化建模工具、语法树解析器、定理生成器、定理证明器、智能合约漏洞检测文档生成器,其中,所述智能合约编译器用于接收区块链智能合约源代码,将区块链智能合约源代码编译得到源码和字节码,再将得到的源码和字节码输出至自动化建模工具进行建模;所述自然语言解释器用于接收智能合约功能需求描述文档,将智能合约功能需求描述文档转化为使用非自然语言描述的智能合约功能需求规范文档,并将智能合约功能需求规范文档传输至定理生成器;所述自动化建模工具用于接收智能合约编译器输出的源码和字节码,并依赖于形式化验证规则模型库对源码和字节码进行自动化建模,对源码进行自动化建模得到智能合约代码抽象语法树文档和源码智能合约模型文档;对字节码进行自动化建模得到字节码智能合约模型文档;所述语法树解析器用于接收自动化建模工具中的智能合约代码抽象语法树文档,并解析出智能合约代码中的常量、变量、继承关系、函数限定符,并为其分配内存地址,生成语法树解析文档并输出至定理生成器;所述定理生成器用于接收自动化建模工具输出的源码智能合约模型文档以及自然语言解释器输出的非自然语言描述的智能合约功能需求规范文档以及语法树解析器输出的语法树解析文档,同时依赖于形式化验证规则模型库对非自然语言进行非形式化描述得到相关定理,生成智能合约定理文档并将其输出至定理证明器;所述定理证明器用于接收定理生成器输出的智能合约定理文档,并对其进行形式化证明得到验证结果,并将验证结果传输至智能合约漏洞检测文档生成器;所述智能合约漏洞检测文档生成器用于接收定理证明器输出的验证结果,并生成智能合约漏洞检测文档。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都链安科技有限公司,未经成都链安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810790872.0/,转载请声明来源钻瓜专利网。