一句话:提出基于深度学习的智能合约安全问题发现方法,通过定位被 Selfdestruct 合约的更新版本来比较历史版本。
智能合约是运行在区块链上的图灵完备程序,部署后无法修改,即使检测到 bug 也不能直接更改。Selfdestruct 是区块链系统中销毁合约并转移合约余额中所有 Ether 的唯一方式,因此不少开发者会在发现 bug 时使用该函数销毁旧合约并重新部署新版本。本文关注如何利用这一开发实践发现以太坊智能合约的安全问题。作者提出一种基于深度学习的方法,通过寻找已被销毁合约的更新版本来比较历史版本,进而定位安全问题;在找到更新版本后,使用 open card sorting 来识别具体安全问题。摘要未报告具体实验数据集、基线或量化结果。
Smart contracts are Turing-complete programs running on the blockchain. They cannot be modified, even when bugs are detected. The Selfdestruct function is the only way to destroy a contract on the blockchain system and transfer all the Ethers on the contract balance. Thus, many developers use this function to destroy a contract and redeploy a new one when bugs are detected. In this paper, we propose a deep learning-based method to find security issues of Ethereum smart contracts by finding the updated version of a destructed contract. After finding the updated versions, we use open card sorting to find security issues.
DOI 原文 ·
@inproceedings{paperbot6024,
title = {Finding ethereum smart contracts security issues by comparing history versions},
author = {Jiachi Chen},
booktitle = {ASE},
year = {2020},
doi = {10.1145/3324884.3418923}
}