A Process Calculus for Formally Verifying Blockchain Consensus Protocols

11/19/2019
by   Wolfgang Jeltsch, et al.
0

Blockchains are becoming increasingly relevant in a variety of fields, such as finance, logistics, and real estate. The fundamental task of a blockchain system is to establish data consistency among distributed agents in an open network. Blockchain consensus protocols are central for performing this task. Since consensus protocols play such a crucial role in blockchain technology, several projects are underway that apply formal methods to these protocols. One such project is carried out by a team of the Formal Methods Group at IOHK. This project, in which the author is involved, aims at a formally verified implementation of the Ouroboros family of consensus protocols, the backbone of the Cardano blockchain. The first outcome of our project is the -calculus (pronounced "natural calculus"), a general-purpose process calculus that serves as our implementation language. The -calculus is a domain-specific language embedded in a functional host language using higher-order abstract syntax. This paper will be a ramble through the -calculus. First we will look at its language and its operational semantics. The latter is unique in that it uses a stack of two labeled transition systems to treat phenomena like data transfer and the opening and closing of channel scope in a modular fashion. The presence of multiple transition systems calls for a generic treatment of derived concurrency concepts. We will see how such a treatment can be achieved by capturing notions like scope opening and silent transitions abstractly using axiomatically defined algebraic structures based on functors and monads.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/14/2023

Evaluating Permissioned Blockchain Using Stochastic Modeling and Chaos Engineering

Blockchain and distributed ledger technologies rely on distributed conse...
research
07/27/2020

AlphaBlock: An Evaluation Framework for Blockchain Consensus Protocols

Consensus protocols play a pivotal role to balance security and efficien...
research
09/20/2022

Correctness of Broadcast via Multicast: Graphically and Formally

Maintaining data consistency among multiple parties requires nodes to re...
research
11/05/2021

Choreographies as Functions

We propose a new interpretation of choreographies as functions, whereby ...
research
11/19/2019

Decentralization in Open Quorum Systems

Decentralisation is one of the promises introduced by blockchain technol...
research
06/11/2021

Stochastic modelling of blockchain consensus

Blockchain and general purpose distributed ledgers are foundational tech...
research
08/24/2022

Your Blockchain Needn't Care How the Message is Spread

In a blockchain system, nodes regularly distribute data to other nodes. ...

Please sign up or login with your details

Forgot password? Click here to reset