Page 244 - 《软件学报》2025年第10期
P. 244
黄静 等: 基于代码控制流图的庞氏骗局合约检测 4641
3.7 模型对比实验
为了验证本文所提出的模型在庞氏骗局合约检测方面的性能, 本节将所提出的模型与目前具有代表性的庞氏
骗局检测模型进行了比较, 主要包括交易网络嵌入模型、基于账户特征模型 (以下简称 Account) [21] 、基于代码特
征模型 (以下简称 Code) [21] 及混合特征模型 (以下简称 Combination) [21] . 几种方法简单介绍如下.
基于交易网络嵌入的庞氏骗局合约检测模型将获取的合约交易记录建模为时间加权多维有向图, 采用基于时
间游走的网络嵌入方法提取交易网络中的隐含特征, 最后采用随机森林分类器完成庞氏骗局合约检测. 基于账户
特征的检测模型从用户账户中提取交易特征, 结合不同分类器来检测庞氏骗局合约. 基于代码特征的检测模型以
智能合约操作码特征作为其特征表达, 结合不同分类器来检测庞氏骗局合约. 混合特征模型则将账户特征与代码
特征融合以完成庞氏骗局合约检测.
对应的实验结果如表 3 所示.
表 3 不同模型性能对比实验
模型 Precision Recall F1-score
交易网络嵌入模型 0.77 0.85 0.81
Account+IF (isolation forest, 孤立森林) 0.04 0.09 0.06
Account+SVM 0.32 0.06 0.09
Account+DT (decision tree, 决策树) 0.58 0.64 0.60
Account+XGBoost (extreme gradient boosting, 极端梯度提升) 0.59 0.22 0.32
Account+RF 0.64 0.20 0.30
Code+IF 0.03 0.06 0.04
Code+SVM 0.95 0.43 0.59
Code+DT 0.64 0.73 0.68
Code+XGBoost 0.91 0.73 0.81
Code+RF 0.94 0.73 0.82
Combination+IF 0.02 0.05 0.04
Combination+SVM 0.91 0.16 0.27
Combination+DT 0.31 0.24 0.27
Combination+XGBoost 0.90 0.67 0.76
Combination+RF 0.95 0.69 0.79
本模型 0.87 0.87 0.87
从实验结果上看, 本方法在检测精度、召回率及 F1 分数上全面超过了交易网络嵌入模型及基于账户特征模
型, 说明对于庞氏骗局合约检测问题, 精准的代码特征提取是提升检测性能的关键. 对比基于代码特征模型及混合
特征模型, 本方法在召回率及 F1 分数上超过了所有对比方法. 特别是 F1 分数, 本方法比次优方法高出 5 个百分
点, 优势明显, 说明本方法兼顾了庞氏骗局合约的查全及查准, 具有优异的检测性能.
4 总 结
本文提出了一种基于代码控制流图的庞氏骗局合约检测模型, 旨在充分挖掘智能合约源代码中的控制流信
息, 从而有效检测庞氏骗局合约. 该模型引入了基于多头注意力机制的 Transformer 模型, 并结合了图卷积网络, 以
学习智能合约的控制流特征. 经实验验证, 该模型在庞氏骗局合约的检测准确率达到了 0.893, F1 分数达到了
0.857, 优于传统的特征学习模型. 这表明模型中引入的多头注意力机制对庞氏骗局合约的检测具有显著的提升
效果.
References:
[1] Nakamoto S. Bitcoin: A peer-to-peer electronic cash system. 2008. https://pdos.csail.mit.edu/6.824/papers/bitcoin.pdf
[2] Jiao T, Shen DR, Nie TZ, Kou Y, Li XH, Yu G. BlockchainDB: Querable and Immutable database. Ruan Jian Xue Bao/Journal of

