Formalizing and Verifying Decentralized Systems with Extended Concurrent Separation Logic

被引:0
作者
Ding, Yepeng [1 ]
Sato, Hiroyuki [1 ]
机构
[1] Univ Tokyo, Tokyo, Japan
来源
ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2020, PT I | 2020年 / 12452卷
关键词
Decentralized system; Extended concurrent separation logic; Formal methods; Consensus; Smart contract; MODEL CHECKING; VERIFICATION; FRAMEWORK;
D O I
10.1007/978-3-030-60245-1_33
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Decentralized techniques are becoming crucial and ubiquitous with the rapid advancement of distributed ledger technologies such as the blockchain. Numerous decentralized systems have been developed to address security and privacy issues with great dependability and reliability via these techniques. Meanwhile, formalization and verification of the decentralized systems is the key to ensuring correctness of the design and security properties of the implementation. In this paper, we propose a novel method of formalizing and verifying decentralized systems with a kind of extended concurrent separation logic. Our logic extends the standard concurrent separation logic with new features including communication encapsulation, environment perception, and node-level reasoning, which enhances modularity and expressiveness. Besides, we develop our logic with unitarity and compatibility to facilitate implementation. Furthermore, we demonstrate the effectiveness and versatility of our method by applying our logic to formalize and verify critical techniques in decentralized systems including the consensus mechanism and the smart contract.
引用
收藏
页码:480 / 494
页数:15
相关论文
共 37 条
[1]   Parameterized Model Checking of Synchronous Distributed Algorithms by Abstraction [J].
Aminof, Benjamin ;
Rubin, Sasha ;
Stoilkovska, Ilina ;
Widder, Josef ;
Zuleger, Florian .
VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION (VMCAI 2018), 2018, 10747 :1-24
[2]   Verification of a Cryptographic Primitive: SHA-256 [J].
Appel, Andrew W. .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2015, 37 (02)
[3]   A Survey of Attacks on Ethereum Smart Contracts (SoK) [J].
Atzei, Nicola ;
Bartoletti, Massimo ;
Cimoli, Tiziana .
PRINCIPLES OF SECURITY AND TRUST (POST 2017), 2017, 10204 :164-186
[4]   Formal Modeling and Verification of Smart Contracts [J].
Bai, Xiaomin ;
Cheng, Zijing ;
Duan, Zhangbo ;
Hu, Kai .
PROCEEDINGS OF 2018 7TH INTERNATIONAL CONFERENCE ON SOFTWARE AND COMPUTER APPLICATIONS (ICSCA 2018), 2018, :322-326
[5]  
Baird L, 2016, Swirlds, Inc.Technical Report SWIRLDS-TR-2016
[6]   Formal Verification of Smart Contracts Short Paper [J].
Bhargavan, Karthikeyan ;
Delignat-Lavaud, Antoine ;
Fournet, Cedric ;
Gollamudi, Anitha ;
Gonthier, Georges ;
Kobeissi, Nadim ;
Kulatova, Natalia ;
Rastogi, Aseem ;
Sibut-Pinote, Thomas ;
Swamy, Nikhil ;
Zanella-Beguelin, Santiago .
PROCEEDINGS OF THE 2016 ACM WORKSHOP ON PROGRAMMING LANGUAGES AND ANALYSIS FOR SECURITY (PLAS'16), 2016, :91-96
[7]   Bitcoin: Economics, Technology, and Governance [J].
Boehme, Rainer ;
Christin, Nicolas ;
Edelman, Benjamin ;
Moore, Tyler .
JOURNAL OF ECONOMIC PERSPECTIVES, 2015, 29 (02) :213-238
[8]   Practical byzantine fault tolerance and proactive recovery [J].
Castro, M ;
Liskov, B .
ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2002, 20 (04) :398-461
[9]  
Cimatti A., 2002, Computer Aided Verification. 14th International Conference, CAV 2002. Proceedings (Lecture Notes in Computer Science Vol.2404), P359
[10]  
Conchon Sylvain, 2012, Computer Aided Verification. Proceedings 24th International Conference, CAV 2012, P718, DOI 10.1007/978-3-642-31424-7_55