English
Related papers

Related papers: Towards Understanding the Bugs in Solidity Compile…

200 papers

Fuzzing is a widely used technique for detecting vulnerabilities in smart contracts, which generates transaction sequences to explore the execution paths of smart contracts. However, existing fuzzers are falling short in detecting…

Cryptography and Security · Computer Science 2025-11-18 Jie Chen , Liangmin Wang

Context: Smart contracts are computer programs that are automatically executed on the blockchain. Vulnerabilities in their implementation have led to severe loss of cryptocurrency. Smart contracts become immutable when deployed to the…

Cryptography and Security · Computer Science 2022-03-29 Majd Soud , Grischa Liebel , Mohammad Hamdaqa

This paper describes Slither, a static analysis framework designed to provide rich information about Ethereum smart contracts. It works by converting Solidity smart contracts into an intermediate representation called SlithIR. SlithIR uses…

Software Engineering · Computer Science 2019-08-28 Josselin Feist , Gustavo Grieco , Alex Groce

Smart contracts on a blockchain behave precisely as specified by their code. A vulnerability in this code can lead to unexpected behaviour, which is hard to fix because a blockchain does not allow to change smart contract code after its…

Programming Languages · Computer Science 2019-11-27 Markus Knecht

A bug or error is a common problem that any software or computer program may encounter. It can occur from badly writing the program, a typing error or bad memory management. However, errors can become a significant issue if the unsafe…

Programming Languages · Computer Science 2019-08-29 Zeinab Nehai , François Bobot

Smart contract (SC) is an extension of BlockChain technology. Ethereum BlockChain was the first to incorporate SC and thus started a new era of crypto-currencies and electronic transactions. Solidity helps to program the SCs. Still, soon…

Cryptography and Security · Computer Science 2021-01-01 Zulfiqar Ali Khan , Akbar Siami Namin

Compilers play a central role in translating high-level code into executable programs, making their correctness essential for ensuring code safety and reliability. While extensive research has focused on verifying the correctness of…

Programming Languages · Computer Science 2025-07-10 Qiong Feng , Xiaotian Ma , Ziyuan Feng , Marat Akhin , Wei Song , Peng Liang

Smart contracts are full-fledged programs that run on blockchains (e.g., Ethereum, one of the most popular blockchains). In Ethereum, gas (in Ether, a cryptographic currency like Bitcoin) is the execution fee compensating the computing…

Software Engineering · Computer Science 2020-11-05 Ting Chen , Xiaoqi Li , Xiapu Luo , Xiaosong Zhang

The usage of error handling in Solidity smart contracts is vital because smart contracts perform transactions that should be verified. Transactions that are not carefully handled, may lead to program crashes and vulnerabilities, implying…

Formal verification of smart contracts has become a hot topic in academic and industrial research, given the growing value of assets managed by decentralized applications and the consequent incentive for adversaries to tamper with them.…

Logic in Computer Science · Computer Science 2024-02-19 Massimo Bartoletti , Fabio Fioravanti , Giulia Matricardi , Roberto Pettinau , Franco Sainas

Software built on poor structural patterns often shows higher exposure to security defects. When code differs from established best practices, verification and maintenance become increasingly difficult, thereby raising the risk of…

Cryptography and Security · Computer Science 2026-01-26 Masoud Jamshidiyan Tehrani

Smart contracts are programs running on cryptocurrency (e.g., Ethereum) blockchains, whose popularity stem from the possibility to perform financial transactions, such as payments and auctions, in a distributed environment without need for…

Cryptography and Security · Computer Science 2018-04-24 Ilya Grishchenko , Matteo Maffei , Clara Schneidewind

Poorly designed smart contracts are particularly vulnerable, as they may allow attackers to exploit weaknesses and steal the virtual currency they manage. In this study, we train a model using unsupervised learning to identify…

Cryptography and Security · Computer Science 2025-04-15 Hong-Sheng Huang , Jen-Yi Ho , Hao-Wen Chen , Hung-Min Sun

Software vulnerabilities are constantly being reported and exploited in software products, causing significant impacts on society. In recent years, the main approach to vulnerability detection, fuzzing, has been integrated into the…

Software Engineering · Computer Science 2025-10-21 Tatsuya Shirai , Olivier Nourry , Yutaro Kashiwa , Kenji Fujiwara , Yasutaka Kamei , Hajimu Iida

The high rate of false alarms from static analysis tools and Large Language Models (LLMs) complicates vulnerability detection in Solidity Smart Contracts, demanding methods that can formally or empirically prove the presence of defects.…

Software Engineering · Computer Science 2025-09-17 Ştefan-Claudiu Susan , Andrei Arusoaie , Dorel Lucanu

Fuzzing is a promising technique for detecting security vulnerabilities. Newly developed fuzzers are typically evaluated in terms of the number of bugs found on vulnerable programs/binaries. However,existing corpora usually do not capture…

Software Engineering · Computer Science 2019-05-07 Xiaogang Zhu , Xiaotao Feng , Tengyun Jiao , Sheng Wen , Yang Xiang , Seyit Camtepe , Jingling Xue

The widespread lack of broad source code verification on blockchain explorers such as Etherscan, where despite 78,047,845 smart contracts deployed on Ethereum (as of May 26, 2025), a mere 767,520 (< 1%) are open source, presents a severe…

Cryptography and Security · Computer Science 2025-06-25 Isaac David , Liyi Zhou , Dawn Song , Arthur Gervais , Kaihua Qin

An important problem in smart contract security is understanding the likelihood and criticality of discovered, or potential, weaknesses in contracts. In this paper we provide a summary of Ethereum smart contract audits performed for 23…

Software Engineering · Computer Science 2020-01-13 Alex Groce , Josselin Feist , Gustavo Grieco , Michael Colburn

Modern blockchain systems support creation of smart contracts -- stateful programs hosted and executed on a blockchain. Smart contracts hold and transfer significant amounts of digital currency which makes them an attractive target for…

Software Engineering · Computer Science 2019-06-10 Dmitrii Suvorov , Vladimir Ulyantsev

With the rise in using immature smart contract programming languages to build a decentralized application, more vulnerabilities have been introduced to the Blockchain and were the main reasons behind critical financial losses. Moreover, the…

Cryptography and Security · Computer Science 2023-12-04 Oualid Zaazaa , Hanan El Bakkali