从字节码自动生成智能合约注释
软件工程
2025-03-20 v1
摘要
最近,智能合约在自动金融和商业交易中发挥着关键作用。为帮助无编程背景的用户更好地理解智能合约的逻辑,先前的研究提出了将智能合约源代码自动翻译为对应代码摘要的模型。然而,实际情况下,仅有 13% 的以太坊区块链上部署的智能合约关联了源代码。现有工具的实际应用受到显著限制。鉴于字节码在部署智能合约时始终是必需的,本文首先引入了从字节码自动生成智能合约代码摘要的任务。我们提出了一种新方法,称为 SmartBT(智能合约字节码翻译器),用于直接自动将智能合约字节码翻译为细粒度的自然语言描述。为解决这一任务的两个关键挑战:字节码中隐藏的结构化代码逻辑以及字节码与自然语言描述之间的巨大语义鸿沟。针对第一个挑战,我们将字节码转换为 CFG(控制流图)以学习代码结构和逻辑细节。针对第二个挑战,我们引入信息检索组件以获取类似注释用于弥补语义差距。随后使用结构输入和语义输入构建注意力序列到序列神经网络模型。采用复制机制从类似注释中直接复制罕见单词,采用覆盖机制消除重复输出。自动评估结果表明,SmartBT 在多个基线方法上取得显著优势,人类评估结果显示 SmartBT 在从字节码直接生成有意义且准确的智能合约注释方面具有有效性和潜力。
引用
@article{arxiv.2503.15270,
title = {Automating Comment Generation for Smart Contract from Bytecode},
author = {Jianhang Xiang and Zhipeng Gao and Lingfeng Bao and Xing Hu and Jiayuan Chen and Xin Xia},
journal= {arXiv preprint arXiv:2503.15270},
year = {2025}
}