Source code obfuscation for smart contracts

Meng Zhang, Pengcheng Zhang, Xiapu Luo, Feng Xiao

Research output: Chapter in book / Conference proceedingConference article published in proceeding or bookAcademic researchpeer-review

5 Citations (Scopus)

Abstract

State-of-the-art work of evaluating smart contract static analysis tools faces a major problem: most test cases (i.e., labeled buggy contracts) are too simple and lack complexity, which makes the evaluation unable to show the real performance of the analysis tools when complex contracts are analyzed. To fill the gap, we propose a novel source code obfuscation approach for Ethereum smart contracts. We use the buggy contracts in the public dataset11 https://github.com/smartbugs/smartbugs/tree/master/dataset to evaluate our approach. The evaluation result shows that our approach can effectively increase the complexity of a contract. Besides, we use obfuscated contracts to evaluate the static analysis tools. The evaluation result shows that the performance of most smart contract static analysis tools decreases in different degree when the original contracts are obfuscated.

Original languageEnglish
Title of host publicationProceedings - 2020 27th Asia-Pacific Software Engineering Conference, APSEC 2020
PublisherIEEE Computer Society
Pages513-514
Number of pages2
ISBN (Electronic)9781728195537
DOIs
Publication statusPublished - Dec 2020
Event27th Asia-Pacific Software Engineering Conference, APSEC 2020 - Singapore, Singapore
Duration: 1 Dec 20204 Dec 2020

Publication series

NameProceedings - Asia-Pacific Software Engineering Conference, APSEC
Volume2020-December
ISSN (Print)1530-1362

Conference

Conference27th Asia-Pacific Software Engineering Conference, APSEC 2020
Country/TerritorySingapore
CitySingapore
Period1/12/204/12/20

Keywords

  • Ethereum
  • obfuscation
  • smart contract

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Source code obfuscation for smart contracts'. Together they form a unique fingerprint.

Cite this