Finding Ethereum Smart Contracts Security Issues by Comparing History Versions

10/03/2020
by   Jiachi Chen, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

research
09/06/2020

DEFECTCHECKER: Automated Smart Contract Defect Detection by Analyzing EVM Bytecode

Smart contracts are Turing-complete programs running on the blockchain. ...
research
05/16/2020

Why Do Smart Contracts Self-Destruct? Investigating the Selfdestruct Function on Ethereum

The Selfdestruct function is provided by Ethereum smart contracts to des...
research
03/01/2022

Practical Mitigation of Smart Contract Bugs

In spite of their popularity, developing secure smart contracts remains ...
research
06/01/2022

Not so immutable: Upgradeability of Smart Contracts on Ethereum

A smart contract that is deployed to a blockchain system like Ethereum i...
research
08/09/2020

Security checklists for Ethereum smart contract development: patterns and best practices

In recent years Smart Contracts and DApps are becoming increasingly impo...
research
07/05/2018

Hunting the Ethereum Smart Contract: Color-inspired Inspection of Potential Attacks

Blockchain and Cryptocurrencies are gaining unprecedented popularity and...
research
01/20/2020

Checking Smart Contracts with Structural Code Embedding

Smart contracts have been increasingly used together with blockchains to...

Please sign up or login with your details

Forgot password? Click here to reset