Abstract
Smart cities will bring forth new business applications that require decentralization and security. The blockchain technology is revolutionizing how businesses have been performing transactions traditionally. This technology is open, decentralized, and distributed by design and also embodies the notion of high level of trust in transactions. With its emergence, developers who are early adopters will make use of it to lower cost, speed up processes, and stitch together solutions previously considered unfathomable. Blockchain’s decentralized ledgers use smart contracts to conduct business automatically without intermediaries. This chapter will introduce the reader to the blockchain technology and smart contracts and discuss best practices to build smart contacts with the right data structures and techniques. We provide an interesting real-world use case of building an efficient supply chain provisioning system using smart contracts. Finally, we discuss pitfalls to avoid and challenges to keep in mind for building next-generation applications that leverage smart contracts. We also describe advantages and disadvantages of smart contracts.
DISTRIBUTION A. Approved for public release: Distribution unlimited. Case Number 88ABW-2020-2766; Dated 08 Sep 2020
This is a preview of subscription content, access via your institution.
References
Androulaki, E., Barger, A., Bortnikov, V., Cachin, C., Christidis, K., De Caro, A., Enyeart, D., Ferris, C., Laventman, G., Manevich, Y., et al. (2018). Hyperledger fabric: A distributed operating system for permissioned blockchains. In Proceedings of the thirteenth EuroSys conference, Eurosys 18, Porto, Portugal (pp. 1–15). New York: ACM.
Atzei, N., Bartoletti, M., & Cimoli, T. (2016). A survey of attacks on ethereum smart contracts. In International conference on financial cryptography and data security, IACR.org, New York, NY, IACR Cryptology ePrint archive, p. 1007.
Beedham, M. (2018). The difference between permissioned and permissionless blockchains. https://thenextweb.com/hardfork/2018/11/05/permissioned-permissionless-blockchains. Accessed 28 Apr 2020.
Bhargavan, K., Delignat-Lavaud, A., Fournet, C., Gollamudi, A., Gonthier, G., Kobeissi, N., Kulatova, N., Rastogi, A., Sibut-Pinote, T., Swamy, N., et al. (2016). Formal verification of smart contracts: Short paper. In Proceedings of the 2016 ACM workshop on programming languages and analysis for security. ACM workshop (pp. 91–96). New York: ACM.
Biswas, K., & Muthukkumarasamy, V. (2016). Securing smart cities using blockchain technology. In 2016 IEEE 18th international conference on high performance computing and communications; IEEE 14th international conference on smart city; IEEE 2nd international conference on data science and systems (HPCC/SmartCity/DSS), IEEE, Sydney, pp. 1392–1393.
Buterin, V., et al. (2013). A next-generation smart contract and decentralized application platform. Technical report, Ethereum.org.
Cong, L. W., & He, Z. (2019). Blockchain disruption and smart contracts. The Review of Financial Studies, 32(5), 1754–1797. Oxford University Press.
Corda. (2020). Corda: Open-source blockchain platform for business. https://www.corda.net. Accessed 01 Apr 2020.
Daley, S. (2020). 19 blockchain-as-a-service companies making the DLT more accessible. https://builtin.com/blockchain/blockchain-as-a-service-companies. Accessed 06 Apr 2020.
Delmolino, K., Arnett, M., Kosba, A., Miller, A., & Shi, E. (2016). Step by step towards creating a safe smart contract: Lessons and insights from a cryptocurrency lab. In International conference on financial cryptography and data security (pp. 79–94). New York: Springer.
Fleta. (2019). 6 popular blockchain programming languages used for building smart contracts and Fleta will support them all. https://medium.com/fleta-first-chain/6-popular-blockchain-programming-languages-used-for-building-smart-contracts-and-fleta-w. Accessed 15 Feb 2020.
Ibba, S., Pinna, A., Seu, M., & Pani, F. E. (2017). Citysense: Blockchain-oriented smart cities. In Proceedings of the XP2017 scientific workshops, Cologne, Germany (Vol. 32, No. 5, pp. 1–5). New York: ACM.
IBM. (2019a). IBM blockchain hyperledger. Where blockchain for business comes to life. https://www.ibm.com/blockchain/hyperledger. Accessed 01 Apr 2020.
IBM. (2019b). IBM use case: Vehicle manufacture. https://www.ibm.com/blockchain/hyperledger. Accessed 10 Oct 2019.
IBM. (2020a). IBM blockchain cloud docs. https://cloud.ibm.com/docs/blockchain-sw?topic=blockchain-sw-get-started-console-ocp. Accessed 01 Apr 2020.
IBM. (2020b). IBM blockchain solutions. https://www.ibm.com/blockchain/solution. Accessed 01 Apr 2020.
IBM. (2020c). IBM code pattern. https://developer.ibm.com/patterns/category/blockchain. Accessed 01 Apr 2020.
Libra. (2019). The libra blockchain. Technical report, Libra.org.
McFarlane, C. (2019). Are smart cities the pathway to blockchain and cryptocurrency adoption? https://www.forbes.com/sites/chrissamcfarlane/2019/10/18/are-smart-cities-the-pathway-to-blockchain-and-cryptocurrency-adoption/#1db185004609. Accessed 20 Apr 2020.
Mendoza, N. F. (2020). Blockchain smart contracts users will increase data quality 50% by 2023. https://www.techrepublic.com/article/blockchain-smart-contracts-users-will-increase-data-quality-50-by-2023/?linkId=81601121. Accessed 31 Jan 2020.
Mingxiao, D., Ma, X., Zhang, Z., & Qijun, C. (2017). Consensus algorithms in blockchain. In 2017 IEEE international conference on systems, man, and cybernetics (SMC), IEEE Explore, Banff, Canada. IEEE.
Mitra, R. (2020). Top four smart contracts platforms: An in-depth analysis. https://blockgeeks.com/guides/smart-contract-platforms-comparison-rsk-vs-ethereum-vs-eos-vs-cardano. Accessed 10 Mar 2020.
Mondal, A., Rao, P., & Madria, S. K. (2016). 17th IEEE international conference on mobile data management (MDM). In Mobile computing, Internet of Things, and Big Data for urban informatics (Vol. 32, No. 5, pp. 8–11). Porto: IEEE.
Mondal, A., Rao, P., & Madria, S. K. (2018). Mobile computing, IoT and big data for urban informatics: Challenges and opportunities. In Handbook of smart cities: Software services and cyber infrastructure (Vol. 32, No. 5, pp. 81–113). Cham: Springer International Publishing.
Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system. Technical report, Bitcoin.org.
Nebulas. (2018). Details on the smart contract ranking algorithm. https://medium.com/nebulasio/details-on-the-smart-contract-ranking-algorithm-part-1-723143c689c3. Accessed 01 Feb 2020.
Netis Group. (2020). The difference between permissionless and permissioned networks. https://medium.com/netis-group-blog/the-difference-between-permissionless-and-permissioned-networks-5acd05578676. Accessed 01 Mar 2020.
Salimitari, M., & Chatterjee, M. (2018). A survey on consensus protocols in blockchain for IoT networks. Technical report. Ithaca: Cornell University.
Sharma, T. K. (2019). Permissioned and permissionless blockchains: A comprehensive guide. Technical report. Walnut: Blockchain Council.
SmartDubai. (2020). Smart Dubai announces achievements of Dubai blockchain strategy. https://www.smartdubai.ae/newsroom/news/smart-dubai-announces-achievements-of-dubai-blockchain-strategy-2020. Accessed 20 Feb 2020.
Utsav, J. (2018). A guide to BaaS for people who do not understand SaaS. https://hackernoon.com/a-guide-to-baas-for-people-who-do-not-understand-saas-bf4990d0377d. Accessed 28 Apr 2020.
Acknowledgments
We would like to acknowledge the funding support of Air Force Research Lab, Rome, NY.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this entry
Cite this entry
Bhagavan, S., Rao, P., Njilla, L. (2020). A Primer on Smart Contracts and Blockchains for Smart Cities. In: Augusto, J.C. (eds) Handbook of Smart Cities. Springer, Cham. https://doi.org/10.1007/978-3-030-15145-4_55-1
Download citation
DOI: https://doi.org/10.1007/978-3-030-15145-4_55-1
Received:
Accepted:
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-15145-4
Online ISBN: 978-3-030-15145-4
eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering