System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种区块链去中心化金融的安全检测方法和装置制造方法及图纸_技高网
当前位置: 首页 > 专利查询>海南大学专利>正文

一种区块链去中心化金融的安全检测方法和装置制造方法及图纸

技术编号:40321130 阅读:12 留言:0更新日期:2024-02-09 14:17
本发明专利技术公开一种区块链去中心化金融的安全检测方法和装置,包括以下步骤:步骤S1、获取恶意交易调用流并收集相关智能合约;步骤S2、构建相关智能合约的控制流程图并模拟调用关系来连接关联图;步骤S3、收集关联图中的数据流路径并验证路径可达性;步骤S4、将收集到的可达路径构建为数据集,并输入DeFiTail模型训练;步骤S5、通过训练好的DeFiTail模型监测交易中是否存在恶意行为。采用本发明专利技术的技术方案,建立在与以太坊虚拟机兼容的所有区块链上,实现在字节码层面的智能合约攻击样式检测;该方案有效地模拟了交易调用流和控制流信息,构建可达的路径流信息,并实现在去中心化金融的实时交易中检测是否存在恶意行为。

【技术实现步骤摘要】

本专利技术属于计算机网络安全,尤其涉及一种区块链去中心化金融的安全检测方法和装置


技术介绍

1、在区块链系统中,区块链去中心化金融(defi)是以智能合约为功能代码的区块链金融协议,定义了链上资产的交易操作;本专利技术主要关注与以太坊兼容的区块链上的defi协议;作为建立在区块链系统上重要的生态系统,defi的安全问题是关乎其能否正确稳定运行的关键。

2、作为区块链上的金融系统,defi系统的交易信息会不可逆转地存储在区块链中;而区块链交易信息分为以下两种形式,外部交易和内部交易;外部交易记录外部账户发起的交易调用过程,内部交易记录合约中发生的状态转移操作;然而,内部交易中的状态转移操作是合约内部逻辑的运行结果;因此,通过构建合约中的控制流程图即可获取数据可能的运行路径;

3、现有区块链去中心化金融安全检测方法,通过不同的技术模拟defi智能合约中的运行逻辑,并以专家知识为基础,总结攻击事件的样式规律;然后在规律中建立检测方法,监测交易中是否存在安全问题;

4、而对于深度学习的检测方法,从defi攻击事件中的智能合约中自动学习漏洞的脆弱样式,以识别攻击事件;但是现如今的深度学习方法都只关注单个合约,defi协议中多个合约交互的情况并不能充分考虑到;因此,深度学习在defi协议中的检测效果并不理想;

5、在defi的背景下,与传统静态分析方法相比,基于深度学习的漏洞检测技术存在以下空缺:

6、基于深度学习的defi攻击事件检测方法没有考虑多方交互的情况;传统静态分析方法,例如模糊测试,已有研究从单个合约的内部逻辑流延伸至调用外部合约的情况;虽然这些静态分析方法考虑到了外部调用流,但是由于根据专家先验知识构建检测方法的特性,随着攻击的进化,这些检测方法也需要重新设计。


技术实现思路

1、本专利技术要解决的技术问题是,提供一种区块链去中心化金融的安全检测方法和装置,对defi背景下多账户,即智能合约和外部账户,之间的交互调用模式进行学习;有效地利用了交易数据中的外部调用流和智能合约中的内部逻辑流,并实现了defi协议安全检测。

2、为实现上述目的,本专利技术采用如下的技术方案:

3、一种区块链去中心化金融的安全检测方法,包括:

4、步骤s1、获取恶意交易调用流并收集相关智能合约;

5、步骤s2、构建相关智能合约的控制流程图并模拟调用关系来连接关联图;

6、步骤s3、收集关联图中的数据流路径并验证路径可达性;

7、步骤s4、将收集到的可达路径构建为数据集,并输入defitail模型训练;

8、步骤s5、通过训练好的defitail模型监测交易中是否存在恶意行为。

9、作为优选,步骤s1中,通过分析rekt数据集中的去中心化金融的权限控制事件和闪贷攻击事件,收集包含攻击账户和被攻击的脆弱合约的恶意交易调用流,并提取恶意交易调用流中的相关智能合约。

10、作为优选,骤s2具体包括:

11、步骤21、通过构建相关智能合约的控制流程图,获取各个合约中的控制流向;

12、步骤22、模拟交易的调用流向,获取多个合约间的数据流向;

13、步骤23、连接控制流向和数据流向,形成关联图。

14、作为优选,步骤s3具体包括:

15、步骤31、通过将调用者合约的函数入口作为起点,在关联图中收集数据流路径;

16、步骤32、利用符号执行记录每条数据流进行的栈操作,通过验证每次栈操作所需的栈元素是否足够,以验证数据流中的每次分支条件判断是否可达;

17、步骤33、通过判断所有数据流的可达性,收集所有的可达的数据路径。

18、作为优选,步骤s4具体包括:

19、步骤41、独热编码化可达数据路径中所有操作码数据作为数据路径嵌入向量,将数据路径嵌入向量作为输入,以训练defitail模型;

20、步骤42、在多个数据路径上构建异质图,并在邻接矩阵中获取所有操作码数据和数据路径之间的关系特征;

21、步骤43、通过transformer编码器结构,将单个数据路径嵌入向量的长度截断为固定大小,以获取每条数据路径的局部特征;

22、步骤44、将步骤43获取到的数据路径特征嵌入到邻接矩阵中,并补全步骤42所得的邻接矩阵,使用图卷积神经网络得到全局的数据路径特征;

23、步骤45、融合步骤44得到的全局特征和步骤43得到的局部路径,得到最后的数据路径特征;

24、步骤46、通过softmax层计算步骤45中得到的数据路径特征是否安全。

25、作为优选,步骤s5包括:

26、步骤51、收集特定时间区间内的所有交易数据;

27、步骤52、通过交易的时间戳属性来顺序构建交易流向,并利用步骤s2的方法构建相关合约的关联图;

28、步骤53、通过步骤s3的方法收集数据路径,并验证数据路径的可达性,获取可达的数据路径;

29、步骤54、将步骤53获取的数据路径独热编码化,并输入到defitail模型中,以判断数据路径是否安全。

30、本专利技术还提供一种区块链去中心化金融的安全检测装置,包括:

31、第一获取模块,用于获取恶意交易调用流并收集相关智能合约;

32、构建模块,用于构建相关智能合约的控制流程图并模拟调用关系来连接关联图;

33、第二获取模块,用于收集关联图中的数据流路径并验证路径可达性;

34、训练模块,用于将收集到的可达路径构建为数据集,并输入defitail模型训练;

35、检测模块,用于通过训练好的defitail模型监测交易中是否存在恶意行为。

36、作为优选,构建模块包括:

37、第一获取单元,用于构建相关智能合约的控制流程图,获取各个合约中的控制流向;

38、第二获取单元,用于模拟交易的调用流向,获取多个合约间的数据流向;

39、连接单元,用于连接控制流向和数据流向,形成关联图。

40、作为优选,第二获取模块包括:

41、第三获取单元,用于将调用者合约的函数入口作为起点,在关联图中收集数据流路径;

42、验证单元,用于验证数据流中的每次分支条件判断是否可达,其利用符号执行记录每条数据流进行的栈操作,通过验证每次栈操作所需的栈元素是否足够;

43、第四获取单元,用于判断所有数据流的可达性,收集所有的可达的数据路径。

44、作为优选,训练模块包括:

45、第一处理单元,用于独热编码化可达数据路径中所有操作码数据,将操作码数据作为数据路径嵌入向量,将数据路径嵌入向量作为输入,以训练defitail模型;

46、第五获取单元,用于在多个数据路径上构建异质图,并在邻接矩阵中获取所有操作本文档来自技高网...

【技术保护点】

1.一种区块链去中心化金融的安全检测方法,其特征在于,包括:

2.如权利要求1所述的区块链去中心化金融的安全检测方法,其特征在于,步骤S1中,通过分析REKT数据集中的去中心化金融的权限控制事件和闪贷攻击事件,收集包含攻击账户和被攻击的脆弱合约的恶意交易调用流,并提取恶意交易调用流中的相关智能合约。

3.如权利要求2所述的区块链去中心化金融的安全检测方法,其特征在于,步骤S2具体包括:

4.如权利要求3所述的区块链去中心化金融的安全检测方法,其特征在于,步骤S3具体包括:

5.权利要求4所述的区块链去中心化金融的安全检测方法,其特征在于,步骤S4具体包括:

6.如权利要求5所述的区块链去中心化金融的安全检测方法,其特征在于,步骤S5包括:

7.一种区块链去中心化金融的安全检测装置,其特征在于,包括:

8.如权利要求7所述的区块链去中心化金融的安全检测装置,其特征在于,构建模块包括:

9.如权利要求8所述的区块链去中心化金融的安全检测装置,其特征在于,第二获取模块包括:

10.权利要求9所述的区块链去中心化金融的安全检测装置,其特征在于,训练模块包括:

...

【技术特征摘要】

1.一种区块链去中心化金融的安全检测方法,其特征在于,包括:

2.如权利要求1所述的区块链去中心化金融的安全检测方法,其特征在于,步骤s1中,通过分析rekt数据集中的去中心化金融的权限控制事件和闪贷攻击事件,收集包含攻击账户和被攻击的脆弱合约的恶意交易调用流,并提取恶意交易调用流中的相关智能合约。

3.如权利要求2所述的区块链去中心化金融的安全检测方法,其特征在于,步骤s2具体包括:

4.如权利要求3所述的区块链去中心化金融的安全检测方法,其特征在于,步骤s3具体包括:

5.权利要...

【专利技术属性】
技术研发人员:李晓琦李文凯刘泽楷匡海璐
申请(专利权)人:海南大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1