Mandala: A Smart Contract Programming Language

11/26/2019
by   Markus Knecht, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/21/2019

SolidityCheck : Quickly Detecting Smart Contract Problems Through Regular Expressions

As a blockchain platform that has developed vigorously in recent years, ...
research
03/27/2020

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

Some blockchain programs (smart contracts) have included serious securit...
research
03/31/2020

UTxO- vs account-based smart contract blockchain programming paradigms

We implement two versions of a simple but paradigmatic smart contract: o...
research
04/13/2019

Flint for Safer Smart Contracts

The Ethereum blockchain platform supports the execution of decentralised...
research
08/05/2021

Protocol-based Smart Contract Generation

The popularity of smart contracts is on the rise, yet breaches in reliab...
research
04/11/2023

Analyzing the Impact of Elusive Faults on Blockchain Reliability

Blockchain recently became very popular due to its use in cryptocurrenci...
research
02/07/2020

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

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

Please sign up or login with your details

Forgot password? Click here to reset