【技术实现步骤摘要】
自动执行路径的监控方法及装置
本公开涉及区块链
,具体涉及一种自动执行路径的监控方法、装置、电子设备及存储介质。
技术介绍
区块链技术是一种去中心化、不需要第三方进行认证、点对点交互的分布式数据存储技术,区块链通过维护链式结构的数据块,可以维护持续增长、不可篡改的数据记录。目前区块链的应用主要集中在数字货币、网络交易等方面,但这仅仅是因为这些领域更依赖区块链的某些特性,事实上区块链实际应用方向远远不止上述领域。第一代区块链在本质上是一个去中心化的数据记录(比如比特币的账本)工具,通过共识算法确保区块链网络的参与者能够维持记录的一致性。第二代区块链技术(比如以太坊)最明显的改进就是加入了智能合约的概念,使其不仅仅是简单的去中心化的记录,而是一个完整的开发平台,开发者可以在其提供的图灵完备的脚本语言基础上建立符合业务逻辑的应用程序。智能合约是运行在区块链上的程序代码,一旦部署上区块链上就无法篡改,其执行过程完全自动化并不需要人为介入,并且执行结果写入到区块链中,由区块链的特性来保证整个执行过程是不可篡改不可逆的。智能合约可以在完全避免第三方的介入下,完成透明、无冲突的交互过程的执行。之后号称第三代区块链技术的EOS(EnterpriseOperationSystem)是为商用分布式应用所设计的一种新型区块链技术,其通过并行链等技术解决了区块链交易吞吐量和延迟的难题。其中,智能合约的模型一般包括以下三个部件:第一,体系结构;智能合约应用多数是用Solidity编写(Solidity是一种强类型的类ja ...
【技术保护点】
1.一种自动执行路径的监控方法,其特征在于,包括:/n根据当前智能合约生成对应的控制流图;/n对所述控制流图进行处理,生成无环路径的控制流图并进行上下文标记;/n对所述智能合约中各个函数的调用关系进行解析,生成对应的函数调用图;/n对所述函数调用图进行处理,生成无循环调用的函数调用图并进行上下文标记;/n部署所述智能合约,根据所述上下文标记对所述智能合约的执行状态进行分析监控。/n
【技术特征摘要】
1.一种自动执行路径的监控方法,其特征在于,包括:
根据当前智能合约生成对应的控制流图;
对所述控制流图进行处理,生成无环路径的控制流图并进行上下文标记;
对所述智能合约中各个函数的调用关系进行解析,生成对应的函数调用图;
对所述函数调用图进行处理,生成无循环调用的函数调用图并进行上下文标记;
部署所述智能合约,根据所述上下文标记对所述智能合约的执行状态进行分析监控。
2.根据权利要求1所述的方法,其特征在于,所述根据当前智能合约生成对应的控制流图包括:
对所述智能合约进行编译,获取EVM上对应的字节码;
根据所述字节码对所述智能合约进行块划分;
根据每个块的内容以及块与块的关系构建生成所述控制流图。
3.根据权利要求1所述的方法,其特征在于,所述对所述控制流图进行处理,生成无环路径的控制流图并进行上下文标记包括:
遍历所述控制流图,将所述控制流图中的每条回边拆分为至少一条无环路径;
使用EPP算法分析控制流程图,对所述控制流图中的每一条路径进行上下文标记,确定所述每一条路径的编码。
4.根据权利要求1所述的方法,其特征在于,所述对所述智能合约中各个函数的调用关系进行解析,生成对应的函数调用图包括:
解析所述智能合约中的各个函数,确定函数之间的调用关系;
以所述各个函数为节点,以所述函数之间的调用关系为边,构建生成所述函数调用图。
5.根据权利要求1所述的方法,其特征在于,所述对所述函数调用图进行处理,生成无循环调用的函数调用图并进行上下文标记包括:
遍历所述函数调用图,将所述函数调用图中的每条回边拆分为至少一条无循环调用边;
对无循环调用的函数调用图进行分析,对其中的每一条路径进行上下文标记,确定所述每一条路径的编码。
6.一种智能合约嵌入式入侵检测方法,其特征在于,包括:
在测试环境中使用测试用例对需要进行保护的智能合约进行测试,收集所有测试用例的路径特征,形成安全路径特征集合;
采用如权利要求1-5中任一项所述的自动执行路径的监控方法对所述智能合约进行处理,将所述安全路径特征集合与带有上下文标记的所述智能合约组成带有嵌入式IDS功能的智能合约部署到区块链中;
在接收到所述嵌入式IDS判断出现入侵行为的通知时,通过审计路径特征重现所述入侵行为的执行场景,以对所述入侵行为进行识别和处理。
7.一种自动执行路径的监控装置,其特征在于,包括:...
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:广州拉卡拉信息技术有限公司,华南师范大学,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。