English
Related papers

Related papers: Understanding Typing-Related Bugs in Solidity Comp…

200 papers

In recent years, the importance of smart contract security has been heightened by the increasing number of attacks against them. To address this issue, a multitude of static application security testing (SAST) tools have been proposed for…

Software Engineering · Computer Science 2024-07-02 Kaixuan Li , Yue Xue , Sen Chen , Han Liu , Kairan Sun , Ming Hu , Haijun Wang , Yang Liu , Yixiang Chen

Solidity is the dominant programming language for Ethereum smart contracts. This paper presents a high-level formalization of the Solidity language with a focus on the memory model. The presented formalization covers all features of the…

Programming Languages · Computer Science 2020-04-20 Ákos Hajdu , Dejan Jovanović

Software testing and verification are critical for ensuring the reliability and security of modern software systems. Traditionally, formal verification techniques, such as model checking and theorem proving, have provided rigorous…

Software Engineering · Computer Science 2025-03-17 Norbert Tihanyi , Tamas Bisztray , Mohamed Amine Ferrag , Bilel Cherif , Richard A. Dubniczky , Ridhi Jain , Lucas C. Cordeiro

Motivation: Automated bug detection in dynamically typed languages such as Python is essential for maintaining code quality. The lack of mandatory type annotations in such languages can lead to errors that are challenging to identify early…

Software Engineering · Computer Science 2025-01-17 Boqi Chen , José Antonio Hernández López , Gunter Mussbacher , Dániel Varró

CompCert is the first realistic formally verified compiler: it provides a machine-checked mathematical proof that the code it generates matches the source code. Yet, there could be loopholes in this approach. We comprehensively analyze…

Logic in Computer Science · Computer Science 2022-10-11 David Monniaux , Sylvain Boulmé

A widespread belief in the blockchain security community is that automated techniques are only good for detecting shallow bugs, typically of small value. In this paper, we present the techniques and insights that have led us to repeatable…

This paper presents the results of a research study related to software system failures, with the goal of understanding how we might better evolve, maintain and support software systems in production. We have qualitatively analyzed thirty…

Software Engineering · Computer Science 2020-08-26 Jonathan Sillito , Esdras Kutomi

Formal program verification is a longstanding goal in the field. We present the first quantitative comparison of the two primary compiler verification approaches, credible compilation/translation validation and full verification. Working…

Programming Languages · Computer Science 2026-05-12 Martin Rinard

The security of smart contracts is critical in blockchain systems, where even minor vulnerabilities can lead to substantial financial losses. Researchers proposed several vulnerability detection tools evaluated using existing benchmarks.…

Software Engineering · Computer Science 2025-04-23 Gerardo Iuliano , Luigi Allocca , Matteo Cicalese , Dario Di Nucci

When blockchain systems are said to be trustless, what this really means is that all the trust is put into software. Thus, there are strong incentives to ensure blockchain software is correct -- vulnerabilities here cost millions and break…

Software Engineering · Computer Science 2025-10-20 Jan Corazza , Ivan Gavran , Gabriela Moreira , Daniel Neider

Smart contracts are the cornerstone of decentralized applications and financial protocols, which extend the application of digital currency transactions. The applications and financial protocols introduce significant security challenges,…

Cryptography and Security · Computer Science 2025-04-22 Hongli Peng , Xiaoqi Li , Wenkai Li

Latency-insensitive design mitigates increasing interconnect delay and enables productive component reuse in complex digital systems. This design style has been adopted in high-level design flows because untimed functional blocks connected…

Logic in Computer Science · Computer Science 2021-02-19 Steve Dai , Alicia Klinefelter , Haoxing Ren , Rangharajan Venkatesan , Ben Keller , Nathaniel Pinckney , Brucek Khailany

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

Smart contracts, as a key component of blockchain technology, play a crucial role in ensuring the automation of transactions and adherence to protocol rules. However, smart contracts are susceptible to security vulnerabilities, which, if…

Cryptography and Security · Computer Science 2024-02-20 Yuying Du , Xueyan Tang

Smart Contracts (SCs) are programs stored in a Blockchain to ensure agreements between two or more parties. Due to the unchangeable essence of Blockchain, failures or errors in SCs become perpetual once published. The reliability of SCs is…

Formal verification entails testing software to ensure it operates as specified. Smart contracts are self-executing contracts with the terms of the agreement directly written into lines of code. They run on blockchain platforms and…

Software Engineering · Computer Science 2025-10-22 Rene Davila , Everardo Barcenas , Rocio Aldeco-Perez

Large language models (LLMs) are increasingly deployed in multilingual, real-world applications with user inputs -- naturally introducing \emph{typographical errors} (typos). Yet most benchmarks assume clean input, leaving the robustness of…

Computation and Language · Computer Science 2026-04-21 Raoyuan Zhao , Yihong Liu , Lena Altinger , Hinrich Schütze , Michael A. Hedderich

The adoption of blockchain based distributed ledgers is growing fast due to their ability to provide reliability, integrity, and auditability without trusted entities. One of the key capabilities of these emerging platforms is the ability…

Cryptography and Security · Computer Science 2019-01-23 Anastasia Mavridou , Aron Laszka , Emmanouela Stachtiari , Abhishek Dubey

Code generation systems have been extensively developed in recent years to generate source code based on natural language instructions. However, despite their advancements, these systems still face robustness issues where even slightly…

Software Engineering · Computer Science 2023-08-28 Ming Yan , Junjie Chen , Jie M. Zhang , Xuejie Cao , Chen Yang , Mark Harman

As collaborative coding environments make it easier to contribute to software projects, the number of developers involved in these projects keeps increasing. This increase makes it more difficult for code reviewers to deal with buggy…

Software Engineering · Computer Science 2020-04-08 Filipe Falcão , Caio Barbosa , Baldoino Fonseca , Alessandro Garcia , Márcio Ribeiro , Rohit Ghey