Abstract:
In this paper we consider the software architecture of InnoChain, a distributed ledger system (DLS) with 5 levels of formal verification, including a formally-verified underlying operating system (OS). The objective of this architecture is to achieve a higher level of DLS dependability compared to more traditional software architectures and quality assurance (QA) methods. The architecture of InnoChain includes (1) a programming language for smart contracts which is a domain-specific language with formal semantics embedded into CakeML, which is a functional language ofthe ML family; this allows us to carry out formal verification of smart contracts' correctness properties using higher-order logic systems, such as HOL4; (2) trusted compilation of smart contracts into the machine code using the verified compiler available for CakeML, rather than relying on a virtual machine for execution of smart contracts; (3) using CakeML for implementation of InnoChain node functionality which allows for formal verification of code correctness and trusted compilation into the machine code; (4) formal verification of the consensus protocol used InnoChain, namely HotStuff BFT; (5) using seL4, a formally-verified microkernel, as the underlying OS for InnoChain instead of more traditional general-purpose OSes such as Linux. The proposed verified architecture will allow InnoChain to be used in mission-critical applications, such as the decentralized Aircraft Fuelling Control System which is currently under development for JSC Aeroflot, the Russian national air carrier.
Ministry of Digital Development, Communications and Mass Media of the Russian Federation and Russian Venture Company (Agreement No. 004/20 dd. 20.03.2020, IGK 0000000007119P190002).
Citation:
L. A. Merkin-Janson, R. M. Rezin, N. K. Vasilyev, “Architecture of the formally-verified distributed ledger system innochain”, Model. Anal. Inform. Sist., 27:4 (2020), 472–487
\Bibitem{MerRezVas20}
\by L.~A.~Merkin-Janson, R.~M.~Rezin, N.~K.~Vasilyev
\paper Architecture of the formally-verified distributed ledger system innochain
\jour Model. Anal. Inform. Sist.
\yr 2020
\vol 27
\issue 4
\pages 472--487
\mathnet{http://mi.mathnet.ru/mais729}
\crossref{https://doi.org/10.18255/1818-1015-2020-4-472-487}
Linking options:
https://www.mathnet.ru/eng/mais729
https://www.mathnet.ru/eng/mais/v27/i4/p472
This publication is cited in the following 2 articles:
Anatoly P. Durakovskiy, Victor S. Gorbatov, Dmitriy A. Dyatlov, Dmitriy A. Melnikov, Studies in Computational Intelligence, 1032, Biologically Inspired Cognitive Architectures 2021, 2022, 96
Xiaoyu Mai, “Distributed Accounting and Blockchain Technology in Financial Accounting”, J. Phys.: Conf. Ser., 1881:2 (2021), 022078