Formal specification of a security framework for smart contracts

01/13/2020
by   Mikhail Mandrykin, et al.
0

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 down, and due to this smart contract upgrades can be especially dangerous. Traditional ways to ensure the security of a smart contract, including DSLs, auditing and static analysis, are used before the code is deployed to the blockchain, and thus offer no protection after the deployment. After each upgrade the whole code need to be verified again, which is a difficult and time-consuming process that is prone to errors. To address these issues a security protocol and framework for smart contracts called Cap9 was developed. It provides developers the ability to perform upgrades in a secure and robust manner, and improves isolation and transparency through the use of a low level capability-based security model. We have used Isabelle/HOL to develop a formal specification of the Cap9 framework and prove its consistency. The paper presents a refinement-based approach that we used to create the specification, as well as discussion of some encountered difficulties during this process.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/04/2019

VeriSolid: Correct-by-Design Smart Contracts for Ethereum

The adoption of blockchain based distributed ledgers is growing fast due...
research
09/23/2021

A Tree-based Construction for Verifiable Diplomas with Issuer Transparency

Still to this day, academic credentials are primarily paper-based, and t...
research
06/17/2021

Enabling Security-Oriented Orchestration of Microservices

As cloud providers push multi-tenancy to new levels to meet growing scal...
research
08/15/2022

Smart Contract Synthesis Modulo Hyperproperties

Smart contracts are small but highly security-critical programs that imp...
research
06/21/2023

Do you still need a manual smart contract audit?

We investigate the feasibility of employing large language models (LLMs)...
research
03/30/2020

SmartCert: Redesigning Digital Certificates with Smart Contracts

The Transport Layer Security (TLS) protocol and its public-key infrastru...
research
01/25/2022

Scalable Typestate Analysis for Low-Latency Environments

Static analyses based on typestates are important in certifying correctn...

Please sign up or login with your details

Forgot password? Click here to reset