DeepAI AI Chat
Log In Sign Up

Mandala: A Smart Contract Programming Language

by   Markus Knecht, et al.

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 deployment. Such vulnerabilities have led to several incidents. In the aftermath of such an event, a hard-fork between Ethereum and Ethereum classic was the result. This thesis proposes to develop a new smart contract programming language with the primary focus on safety, auditability, and the intention to prevent as many of the known categories of vulnerabilities by design as possible. The programming language's code is validated during deployment and afterwards isolated from other smart contracts running on the same blockchain to enforce compile-time guarantees during runtime. The designed programming language does evaluate new concepts and paradigms rarely used in non-smart contract environments for their potential benefit in a smart contract environment.


page 1

page 2

page 3

page 4


SolidityCheck : Quickly Detecting Smart Contract Problems Through Regular Expressions

As a blockchain platform that has developed vigorously in recent years, ...

An Empirical Study of Ownership, Typestate, and Assets in the Obsidian Smart Contract Language

Some blockchain programs (smart contracts) have included serious securit...

UTxO- vs account-based smart contract blockchain programming paradigms

We implement two versions of a simple but paradigmatic smart contract: o...

Flint for Safer Smart Contracts

The Ethereum blockchain platform supports the execution of decentralised...

Protocol-based Smart Contract Generation

The popularity of smart contracts is on the rise, yet breaches in reliab...

Securing Smart Contract On The Fly

We present Solythesis, a source to source Solidity compiler which takes ...

Formalising and verifying smart contracts with Solidifier: a bounded model checker for Solidity

The exploitation of smart-contract vulnerabilities can have catastrophic...