[发明专利]面向以太坊智能合约的协议安全属性自动提取方法及系统在审
申请号: | 202111624759.3 | 申请日: | 2021-12-28 |
公开(公告)号: | CN114331396A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 汪万森;黄文超;熊焰;熊峰 | 申请(专利权)人: | 中国科学技术大学 |
主分类号: | G06Q20/06 | 分类号: | G06Q20/06;G06Q20/38;G06Q40/04 |
代理公司: | 安徽思沃达知识产权代理有限公司 34220 | 代理人: | 赵晶莹 |
地址: | 230000*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 以太 智能 合约 协议 安全 属性 自动 提取 方法 系统 | ||
1.一种面向以太坊智能合约的协议安全属性自动提取方法,其特征在于,包括:
根据以太坊智能合约的源码中使用的函数和/或全局变量类型,确定所述以太坊智能合约的类型;
根据所述以太坊智能合约的类型,提取设定类型的安全属性。
2.根据权利要求1所述的一种面向以太坊智能合约的协议安全属性自动提取方法,其特征在于,所述根据以太坊智能合约的源码中使用的函数与全局变量类型,确定所述以太坊智能合约的类型包括:
查找所述以太坊智能合约的源码中是否有如下函数和/或全局变量:第一类为变量balances和totalSupply;第二类为函数transfer;第三类为函数buyToken;
如果所述以太坊智能合约的源码包含以上三类,则归类为兑换合约;
如果所述以太坊智能合约的源码包含第一类与第二类,则归类为代币合约;
如果所述以太坊智能合约的源码未包含以上三类,则继续查找其是否使用了以太坊官方函数transfer、send和call,若使用,则归类为以太币相关合约。
3.根据权利要求1或2所述的一种面向以太坊智能合约的协议安全属性自动提取方法,其特征在于,
当所述以太坊智能合约的类型为以太币相关合约时,提取如下两类安全属性:
第一类为不变式属性,满足在任意交易前后,下述不变式成立:
其中,amount(a1)表示以太币相关合约能够转给账户a1的以太币数量,me(a1)表示账户a1的以太币余额,A1表示amount变量值或以太币余额会被交易所影响的账户地址集合;C1为任意的常量值;
第二类为等价属性,满足在执行两个参数相同的交易后,即使两个交易所在区块的区块号或时间戳不同,各个账户的以太币余额依然相同。
4.根据权利要求1或2所述的一种面向以太坊智能合约的协议安全属性自动提取方法,其特征在于,
当所述以太坊智能合约的类型为以代币合约时,提取不变式属性,满足在任意交易前后,下述不变式成立:
其中,balances(a2)表示账户a2保存的代币余额,totalSupply表示保存代币的总量,A2表示代币余额会被交易所影响的账户地址集合。
5.根据权利要求1或2所述的一种面向以太坊智能合约的协议安全属性自动提取方法,其特征在于,
当所述以太坊智能合约的类型为兑换合约时,提取不变式属性,满足在任意交易前后,下述不变式成立:
其中,balances(a3)表示账户a3保存的代币余额,me(a3)表示账户a3的以太币余额,A3表示代币余额或以太币余额会被交易所影响的账户地址集合,C2为任意的常量值,γ为代币对以太币的汇率。
6.一种面向以太坊智能合约的协议安全属性自动提取系统,其特征在于,用于实现权利要求1~5任一项所述的方法,该系统包括:
合约分类单元,用于根据以太坊智能合约的源码中使用的函数和/或全局变量类型,确定所述以太坊智能合约的类型;
安全属性提取单元,用于根据所述以太坊智能合约的类型,提取设定类型的安全属性。
7.一种处理设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~5任一项所述的方法。
8.一种可读存储介质,存储有计算机程序,其特征在于,当计算机程序被处理器执行时实现如权利要求1~5任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学,未经中国科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111624759.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种移动检修电源集群管理系统
- 下一篇:一种电力工程用电力塔防护装置