Abstract
The Nervos CKB (Common Knowledge Base) is a public permission-less blockchain designed for a peer-to-peer crypto- economy network. The CKB block synchronization protocol is an important part of the Nervos CKB, which provides a set of rules that participating nodes must obey while synchronizing their blocks. The protocol contains three stages: Connecting Header, Downloading Block and Accepting Block. In this paper, we develop the formal model of the CKB block synchronization protocol and verify some important properties of the protocol using the UPPAAL model checker. Based on the formal model, the reliability of CKB can be guaranteed.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abdellatif, T., Brousmiche, K.-L.: Formal verification of smart contracts based on users and blockchain behaviors models. In: 2018 9th IFIP International Conference on New Technologies, Mobility and Security (NTMS), pp. 1–5. IEEE (2018)
Andrychowicz, M., Dziembowski, S., Malinowski, D., Mazurek, Ł.: Modeling Bitcoin contracts by timed automata. In: Legay, A., Bozga, M. (eds.) FORMATS 2014. LNCS, vol. 8711, pp. 7–22. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-10512-3_2
Bai, X., Cheng, Z., Duan, Z., Hu, K.: Formal modeling and verification of smart contracts. In: Proceedings of ICSCA 2018, pp. 322–326. ACM (2018)
Behrmann, G., David, A., Larsen, K.G.: A Tutorial on Uppaal. In: Bernardo, M., Corradini, F. (eds.) SFM-RT 2004. LNCS, vol. 3185, pp. 200–236. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30080-9_7
Bhargavan, K., Blanchet, B., Kobeissi, N.: Verified models and reference implementations for the TLS 1.3 standard candidate. In: 2017 IEEE Symposium on Security and Privacy, pp. 483–502. IEEE (2017)
Bigi, G., Bracciali, A., Meacci, G., Tuosto, E.: Validation of decentralised smart contracts through game theory and formal methods. In: Bodei, C., Ferrari, G.-L., Priami, C. (eds.) Programming Languages with Applications to Biology and Security. LNCS, vol. 9465, pp. 142–161. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25527-9_11
Chaudhary, K., Fehnker, A., van de Pol, J., Stoelinga, M.: Modeling and verification of the bitcoin protocol. In: Proceedings of MARS 2015, EPTCS, pp. 46–60. Open Publishing Association, November 2015
Marques-Silva, J., Malik, S.: Propositional SAT solving. Handbook of Model Checking, pp. 247–275. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-10575-8_9
David, A., Larsen, K.G., Legay, A., Mikuǎionis, M., Poulsen, D.B.: Uppaal SMC tutorial. Int. J. Softw. Tools Technol. Transfer 17(4), 397–415 (2015)
Ellul, J., Pace, G.J.: Runtime verification of ethereum smart contracts. In: Proceedings of EDCC 2018, pp. 158–163. IEEE Computer Society (2018)
Ethereum. https://github.com/ethereum. Accessed 2 May 2020
Lu, Y., Sun, M.: Modeling and verification of IEEE 802.11i security protocol in UPPAAL for internet of things. Int. J. Softw. Eng. Knowl. Eng. 28(11–12), 1619–1636 (2018)
Madl, G., Bathen, L.A.D., Flores, G.H., Jadav, D.: Formal verification of smart contracts using interface automata. In: Proceedings of Blockchain 2019, pp. 556–563. IEEE (2019)
Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008). https://bitcoin.org/bitcoin.pdf
Nervos CKB: A Common Knowledge Base for Crypto-Economy. https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0002-ckb/0002-ckb.md
Zheng, Z., Xie, S., Dai, H., Chen, X., Wang, H.: Blockchain challenges and opportunities: a survey. Int. J. Web Grid Serv. 14(4), 352–375 (2018)
Acknowledgments
This work was partially supported by the Guangdong Science and Technology Department (Grant no. 2018B010107004) and the National Natural Science Foundation of China under grant no. 61772038 and 61532019. The authors are grateful to the members of Cryptape and the Nervos team for their helpful discussions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Zhang, Q., Lu, Y., Sun, M. (2020). Modeling and Verification of the Nervos CKB Block Synchronization Protocol in UPPAAL. In: Zheng, Z., Dai, HN., Fu, X., Chen, B. (eds) Blockchain and Trustworthy Systems. BlockSys 2020. Communications in Computer and Information Science, vol 1267. Springer, Singapore. https://doi.org/10.1007/978-981-15-9213-3_1
Download citation
DOI: https://doi.org/10.1007/978-981-15-9213-3_1
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-9212-6
Online ISBN: 978-981-15-9213-3
eBook Packages: Computer ScienceComputer Science (R0)