一句话:提出开源工具 OpenTracer,完整追踪智能合约交易每一步执行信息并据此推断不变式。
智能合约是区块链上自动执行的程序,可在无中心化监管的情况下支持可靠的价值交换。尽管工业界与学术界近来关注对其交易历史做动态分析,但目前尚无开源工具能全面追踪完整的交易信息,以提取用户所需的数据(如与不变式相关的数据)。本文提出 OpenTracer 以填补这一空白:它保证对每一次执行步骤的完整追踪,提供完整的交易信息。作者使用 OpenTracer 分析了 350,800 笔以太坊交易,并依据预定义模板成功推断出 23 种不同类型的不变式。该工具完全开源,可供希望从交易轨迹中提取或验证新不变式的开发者与研究者使用。
Smart contracts, self-executing programs on the blockchain, facilitate reliable value exchanges without centralized oversight. Despite the recent focus on dynamic analysis of their transaction histories in both industry and academia, no open-source tool currently offers comprehensive tracking of complete transaction information to extract user-desired data such as invariant-related data. This paper introduces OpenTracer, designed to address this gap. OpenTracer guarantees comprehensive tracking of every execution step, providing complete transaction information. OpenTracer has been employed to analyze 350,800 Ethereum transactions, successfully inferring 23 different types of invariant from predefined templates. The tool is fully open-sourced, serving as a valuable resource for developers and researchers aiming to extract or validate new invariants from transaction traces. A demonstration video of OpenTracer is available at https://youtu.be/vTdmjWdYd30. The source code of OpenTracer is available at https://github.com/jeffchen006/OpenTracer.
DOI 原文 ·
@inproceedings{paperbot8391,
title = {OpenTracer: A Dynamic Transaction Trace Analyzer for Smart Contract Invariant Generation and Beyond},
author = {Zhiyang Chen and Ye Liu and Sidi Mohamed Beillahi and Yi Li and Fan Long},
booktitle = {ASE},
year = {2024},
doi = {10.1145/3691620.3695361}
}