TY - GEN
T1 - STAN: Towards Describing Bytecodes of Smart Contract
AU - Li, Xiaoqi
AU - Chen, Ting
AU - Luo, Xiapu
AU - Zhang, Tao
AU - Yu, Le
AU - Xu, Zhou
N1 - Funding Information:
VIII. ACKNOWLEDGEMENT We thank the anonymous reviewers for their helpful comments. This research is partially supported by the Hong Kong General Research Fund (No. 152193/19E) and the National Natural Science Foundation of China (No. 61872057) and National Key R&D Program of China (2018YFB0804100).
Publisher Copyright:
© 2020 IEEE.
PY - 2020/12
Y1 - 2020/12
N2 - More than eight million smart contracts have been deployed into Ethereum, which is the most popular blockchain that supports smart contract. However, less than 1% of deployed smart contracts are open-source, and it is difficult for users to understand the functionality and internal mechanism of those closed-source contracts. Although a few decompilers for smart contracts have been recently proposed, it is still not easy for users to grasp the semantic information of the contract, not to mention the potential misleading due to decompilation errors. In this paper, we propose the first system named Stan to generate descriptions for the bytecodes of smart contracts to help users comprehend them. In particular, for each interface in a smart contract, Stan can generate four categories of descriptions, including functionality description, usage description, behavior description, and payment description, by leveraging symbolic execution and NLP (Natural Language Processing) techniques. Extensive experiments show that Stan can generate adequate, accurate and readable descriptions for contract's bytecodes, which have practical value for users.
AB - More than eight million smart contracts have been deployed into Ethereum, which is the most popular blockchain that supports smart contract. However, less than 1% of deployed smart contracts are open-source, and it is difficult for users to understand the functionality and internal mechanism of those closed-source contracts. Although a few decompilers for smart contracts have been recently proposed, it is still not easy for users to grasp the semantic information of the contract, not to mention the potential misleading due to decompilation errors. In this paper, we propose the first system named Stan to generate descriptions for the bytecodes of smart contracts to help users comprehend them. In particular, for each interface in a smart contract, Stan can generate four categories of descriptions, including functionality description, usage description, behavior description, and payment description, by leveraging symbolic execution and NLP (Natural Language Processing) techniques. Extensive experiments show that Stan can generate adequate, accurate and readable descriptions for contract's bytecodes, which have practical value for users.
KW - Ethereum
KW - Program comprehension
KW - Smart contract
UR - http://www.scopus.com/inward/record.url?scp=85097585973&partnerID=8YFLogxK
U2 - 10.1109/QRS51102.2020.00045
DO - 10.1109/QRS51102.2020.00045
M3 - Conference article published in proceeding or book
AN - SCOPUS:85097585973
T3 - Proceedings - 2020 IEEE 20th International Conference on Software Quality, Reliability, and Security, QRS 2020
SP - 273
EP - 284
BT - Proceedings - 2020 IEEE 20th International Conference on Software Quality, Reliability, and Security, QRS 2020
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 20th IEEE International Conference on Software Quality, Reliability, and Security, QRS 2020
Y2 - 11 December 2020 through 14 December 2020
ER -