English
Related papers

Related papers: HELMHOLTZ: A Verifier for Tezos Smart Contracts Ba…

200 papers

Once you have invented digital money, you may need a ledger to track who owns what -- and an interface to that ledger so that users of your money can transact. On the Tezos blockchain this implies: a smart contract (distributed program),…

Logic in Computer Science · Computer Science 2021-12-02 Murdoch Gabbay , Arvid Jakobsson , Kristina Sojakova

Smart contracts are blockchain-based algorithms that execute when specific criteria are satisfied. They are often used to automate the implementation of an agreement so that all parties may be confident of the conclusion right away, without…

Cryptography and Security · Computer Science 2022-12-19 Harry Virani , Manthan Kyada

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ć

The Ethereum blockchain platform supports the execution of decentralised applications or smart contracts. These typically hold and transfer digital currency to other parties on the platform; however, they have been subject to numerous…

Programming Languages · Computer Science 2019-04-16 Franklin Schrans , Daniel Hails , Alexander Harkness , Sophia Drossopoulou , Susan Eisenbach

The Ethereum Virtual Machine (EVM) is a decentralized computing engine. It enables the Ethereum blockchain to execute smart contracts and decentralized applications (dApps). The increasing adoption of Ethereum sparked the rise of phishing…

Cryptography and Security · Computer Science 2025-06-25 Pasquale De Rosa , Simon Queyrut , Yérom-David Bromberg , Pascal Felber , Valerio Schiavoni

Smart contracts are small programs on the blockchain that often handle valuable assets. Vulnerabilities in smart contracts can be costly, as time has shown over and over again. Countermeasures are high in demand and include best practice…

Software Engineering · Computer Science 2023-05-03 Monika di Angelo , Gernot Salzer

We introduce Refinement Reflection, a new framework for building SMT-based deductive verifiers. The key idea is to reflect the code implementing a user-defined function into the function's (output) refinement type. As a consequence, at uses…

Programming Languages · Computer Science 2019-07-16 Niki Vazou , Anish Tondwalkar , Vikraman Choudhury , Ryan G. Scott , Ryan R. Newton , Philip Wadler , Ranjit Jhala

Compiler correctness is an old problem, but with the emergence of smart contracts on blockchains that problem presents itself in a new light. Smart contracts are self-contained pieces of software that control assets, which are often of high…

Programming Languages · Computer Science 2022-02-23 Jacco O. G. Krijnen , Manuel M. T. Chakravarty , Gabriele Keller , Wouter Swierstra

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

As smart contracts are growing in size and complexity, it becomes harder and harder to ensure their correctness and security. Due to the lack of isolation mechanisms a single mistake or vulnerability in the code can bring the whole system…

Software Engineering · Computer Science 2020-01-14 Mikhail Mandrykin , Jake O'Shannessy , Jacob Payne , Ilya Shchepetkov

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

We present a methodology to develop verified smart contracts. We write smart contracts, their specifications and implementations in the verification-friendly language Dafny. In our methodology the ability to write specifications,…

Logic in Computer Science · Computer Science 2022-08-08 Franck Cassez , Joanne Fuller , Horacio Mijail Anton Quiles

Corruption is a major global financial problem with billions of dollars rendered lost or unaccountable annually. Corruption through contract fraud is often conducted by withholding and/or altering financial information. When such scandals…

Computers and Society · Computer Science 2020-02-18 Jørgen Svennevik Notland , Jakob Svennevik Notland , Donn Morrison

The Move Prover (MVP) is a formal verifier for smart contracts written in the Move programming language. MVP has an expressive specification language, and is fast and reliable enough that it can be run routinely by developers and in…

Programming Languages · Computer Science 2022-02-15 David Dill , Wolfgang Grieskamp , Junkil Park , Shaz Qadeer , Meng Xu , Emma Zhong

As blockchain technology and smart contracts become widely adopted, securing them throughout every stage of the transaction process is essential. The concern of improved security for smart contracts is to find and detect vulnerabilities…

Cryptography and Security · Computer Science 2025-03-11 S M Mostaq Hossain , Amani Altarawneh , Jesse Roberts

Smart contracts codify real-world transactions and automatically execute the terms of the contract when predefined conditions are met. This paper proposes SmartML, a modeling language for smart contracts that is platform independent and…

Software Engineering · Computer Science 2024-07-01 Adele Veschetti , Richard Bubel , Reiner Hähnle

Smart contracts are computer programs that can be consistently executed by a network of mutually distrusting nodes, without the arbitration of a trusted authority. Because of their resilience to tampering, smart contracts are appealing in…

Cryptography and Security · Computer Science 2018-06-21 Massimo Bartoletti , Livio Pompianu

The Ethereum blockchain is essentially a globally replicated public database. Programs called smart contracts can access this database. Over 10 million smart contracts have been deployed on the Ethereum blockchain. Executing a method of a…

Software Engineering · Computer Science 2019-07-23 Pieter Hartel , Mark van Staalduinen

Smart contract applications on the blockchain can only reach their full potential if they integrate seamlessly with traditional software systems via a programmatic interface. This interface should provide for originating and invoking…

Programming Languages · Computer Science 2021-08-31 Thi Thu Ha Doan , Peter Thiemann

Modern cryptocurrency systems, such as Ethereum, permit complex financial transactions through scripts called smart contracts. These smart contracts are executed many, many times, always without real concurrency. First, all smart contracts…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-02-16 Thomas Dickerson , Paul Gazzillo , Maurice Herlihy , Eric Koskinen