Page 452 - 《软件学报》2026年第3期
P. 452
宁小勇 等: 融合 TextCNN 和对抗训练的以太坊庞氏骗局检测模型 1415
本文的主要贡献包括以下内容.
1) 提出了融合 TextCNN 和对抗训练的庞氏骗局检测框架. 该框架可以在智能合约部署时对操作码进行深度
分析, 以尽早、准确地识别潜在的庞氏骗局, 为智能合约的安全提供有效的支持.
2) 设计了智能合约操作码行为序列提取算法, 该算法通过对智能合约操作码进行静态分析, 构建操作码连通
图, 最终生成保留操作码结构与行为信息的行为序列, 有效解决了特征提取不全面的问题.
3) 提出动态步长投影梯度下降算法 (DSPGD), 该方法通过添加步长变化控制因子和优化趋势判断, 解决了投
影梯度下降算法 PGD 所存在的问题. 将该算法与 TextCNN 相结合 (称为 TextCNN_DSPGD), 提高了检测模型的
鲁棒性和准确性.
4) 通过大量实验对提出的融合模型进行了验证, 并与已有经典方法进行性能对比. 结果表明, 在保证模型精确
度的前提下, 该融合模型可有效增强模型的鲁棒性.
本文第 2 节综述庞氏骗局检测和对抗训练的相关工作. 第 3 节介绍本文提出方法, 其中包括行为序列提取过
程、改进后的 DSPGD 算法以及 TextCNN 模型构建等. 第 4 节详细说明实验过程, 并对结果进行详细分析. 最后,
第 5 节总结全文, 并提出未来的研究方向.
2 相关工作
在本节中, 我们将综述庞氏骗局智能合约检测的现有方法以及对抗训练的研究进展.
2.1 庞氏骗局检测
Bartoletti 等人 [7] 最早开展庞氏骗局合约检测研究, 他们从描述性信息、源代码和交易记录这 3 个方面分析了
庞氏骗局智能合约的共性, 并在其报告中首次对区块链上庞氏骗局的识别进行了实证研究, 通过人工识别对样本
进行了区分, 并对相关合约在不同研究层面进行了详细分析. Chen 等人 [8] 根据 Bartoletti 等人 [7] 的分析结果, 从以
太坊智能合约操作码中提取特征, 然后通过 XGBoost 模型将 Ethereum 上的智能合约与普通合约区分开来. 事实
证明, 该方法比人工对比更加准确. 后来, Chen 等人 [9] 用随机森林 (random forest, RF) 的方法来检测庞氏骗局的智
能合约, 准确率高于其他机器学习方法. 然而, 前者存在潜在的目标泄漏, 而后者通过不同值的类别特征产生的属
性权重并不那么可靠. Jung 等人 [10] 在 Chen 等人 [9] 的基础上增加了账户特征, 但简化数据集更容易导致模型过拟
合. He 等人 [11] 提出 CTRF 方法, 通过提取智能合约代码的操作码特征、序列特征和交易特征形成数据集, 同时采
用过采样技术处理正负样本不平衡的问题. 现有的方法在处理类别特征和计算梯度估计时, 存在潜在的目标泄漏
和预测转移问题. 于是 Fan 等人 [12] 介绍了一种检测区块链中智能庞氏骗局的新方法, 提出了一个基于有序提升思
想的反泄漏智能庞氏骗局检测模型, 减轻梯度估计偏差, 提高了模型的泛化能力.
Wang 等人 [13] 提出一种基于超采样的智能合约长短期记忆 (long short term memory, LSTM) 的庞氏骗局检测
方法, 整合了 SMOTE (synthetic minority over-sampling technique) 算法和 LSTM 来构建检测模型, 其中数据集由智
能合约的账户特征和操作码的频率特征组成. Lou 等人 [14] 将智能合约字节码转化成不同大小的单通道图像, 并引
入空间金字塔池化 (spatial pyramid pooling) 对卷积神经网络进行改进, 使得模型可以训练不同大小的图像. Bian
等人 [15] 提出了一种基于以太坊的注意力胶囊网络的基于图像的骗局检测方法. 根据合约地址下载得到其字节码
文件和应用程序二进制接口, 从中提取特征转换成灰度图像, 再将它们合并生成 RGB 图像作为模型输入, 改善单
一特征不能全面表征庞氏骗局合约特征的问题. Chen 等人 [16] 提出了一种将操作码转换成序列来处理数据的 Ponzi-
Conv1D-Z3 方法, 以避免丢失重要信息. 他们使用一维卷积神经网络结合形式验证, 并利用形式验证工具 Z3 求解
器对最终模型进行形式安全验证, 确保其安全性.
Sun 等人 [17] 在以太坊测试网络上的行为树上构建行为森林, 全面描述智能合约的动态行为, 采用自适应的全
路径树编辑距离 (all path tree edit distance, AP-TED) 算法计算加权行为树之间的相似性. Chen 等人 [18] 基于动态符
号执行技术提出 SADPonzi, 是一种用于识别以太坊智能合约中庞氏骗局的语义感知检测方法. 实际上, 它是一种
启发式引导的符号执行技术, 模拟源程序的运行过程, 在根据庞氏骗局的再分配策略和用于存储用户信息的数据

