Blockchain smart contracts: Applications, challenges, and future trends

Peer-to-Peer Networking and Applications - Tập 14 - Trang 2901-2925 - 2021
Shafaq Naheed Khan1, Faiza Loukil2, Chirine Ghedira-Guegan3, Elhadj Benkhelifa4, Anoud Bani-Hani1
1Zayed University, Dubai, United Arab Emirates
2Univ. Polytechnique Hauts-de-France, LAMIH, CNRS, UMR 8201, Valenciennes, France
3University of Lyon, Iaelyon school of Management, University Jean Moulin Lyon 3, CNRS, LIRIS, Lyon, France
4Staffordshire University, Stoke on Trent, UK

Tóm tắt

In recent years, the rapid development of blockchain technology and cryptocurrencies has influenced the financial industry by creating a new crypto-economy. Then, next-generation decentralized applications without involving a trusted third-party have emerged thanks to the appearance of smart contracts, which are computer protocols designed to facilitate, verify, and enforce automatically the negotiation and agreement among multiple untrustworthy parties. Despite the bright side of smart contracts, several concerns continue to undermine their adoption, such as security threats, vulnerabilities, and legal issues. In this paper, we present a comprehensive survey of blockchain-enabled smart contracts from both technical and usage points of view. To do so, we present a taxonomy of existing blockchain-enabled smart contract solutions, categorize the included research papers, and discuss the existing smart contract-based studies. Based on the findings from the survey, we identify a set of challenges and open issues that need to be addressed in future studies. Finally, we identify future trends.

Tài liệu tham khảo

Alharby M, Aldweesh A, van Moorsel A (2018) Blockchain-based smart contracts: A systematic mapping study of academic research (2018). In: 2018 International Conference on Cloud Computing, Big Data and Blockchain (ICCBB), IEEE, pp 1–6 Amani S, Bégel M, Bortin M, Staples M (2018) Towards verifying ethereum smart contract bytecode in isabelle/hol. In: Proceedings of the 7th ACM SIGPLAN International Conference on Certified Programs and Proofs. Association for Computing Machinery, New York, pp 66–77 Analytics TC Ripple xrp continue to revolutionize cross border payment systems. Available online at https://thecurrencyanalytics.com/11696/ripple-xrp-continue-to-revolutionize-cross-border-payment-systemshttps://thecurrencyanalytics.com/11696/ripple-xrp-continue-to-revolutionize-cross-border-payment-systems (2020). Last accessed: 2020-10-03 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, ACM, pp 30 Angelo MD, Salzer G (2019) A survey of tools for analyzing ethereum smart contracts. In: IEEE International Conference on Decentralized Applications and Infrastructures, DAPPCON 2019, newark, CA, USA, April 4-9, 2019, IEEE, pp 69–78 Angrish A, Craver B, Hasan M, Starly B (2018) A case study for blockchain in manufacturing: “fabrec”: A prototype for peer-to-peer network of manufacturing nodes. Procedia Manufacturing 26:1180–1192. 46th SME North American Manufacturing Research Conference, NAMRC 46, Texas, USA Asgaonkar A, Krishnamachari B (2019) Solving the buyer and seller’s dilemma: A dual-deposit escrow smart contract for provably cheat-proof delivery and payment for a digital good without a trusted mediator. In: 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC) Atzei N, Bartoletti M, Cimoli T (2017) A survey of attacks on ethereum smart contracts (sok). In: International Conference on Principles of Security and Trust, Springer, pp 164–186 Bader L, Bürger JC, Matzutt R, Wehrle K (2018) Smart contract-based car insurance policies. In: 2018 IEEE Globecom workshops (GC wkshps), pp 1–7 Bai X, Cheng Z, Duan Z, Hu K (2018) Formal modeling and verification of smart contracts. In: Proceedings of the 2018 7th International Conference on Software and Computer Applications. Association for Computing Machinery, New York, pp 322–326 Baralla G, Pinna A, Corrias G (2019) Ensure traceability in european food supply chain by using a blockchain system. In: Proceedings of the 2nd International Workshop on Emerging Trends in Software Engineering for Blockchain, IEEE Press, pp 40–47 Bartoletti M, Pompianu L (2017) An empirical analysis of smart contracts: Platforms, applications, and design patterns. In: International Conference on Financial Cryptography and Data Security, Springer, pp 494–509 Bertini T, Butkute K, Canessa F Smart flight insurance—insureth. Available online at http://mkvd.s3.amazonaws.com/apps/InsurEth.pdf (2015). Last accessed: 2020-10-10 Bogner A, Chanson M, Meeuw A (2016) A decentralised sharing app running a smart contract on the ethereum blockchain. In: Proceedings of the 6th International Conference on the Internet of Things. Association for Computing Machinery, New York, pp 177–178 Bragagnolo S, Rocha H, Denker M, Ducasse S (2018) Smartinspect: Solidity smart contract inspector. In: 2018 International workshop on blockchain oriented software engineering (IWBOSE), pp 9–18 Buterin V et al (2014) A next-generation smart contract and decentralized application platform. White paper Casado-Vara R, Prieto J, [la Prieta] FD, Corchado JM (2018) How blockchain improves the supply chain: Case study alimentary supply chain. Procedia Comput Sci 134:393–398. The 15th International Conference on Mobile Systems and Pervasive Computing (MobiSPC 2018) / The 13th International Conference on Future Networks and Communications (FNC-2018) / Affiliated Workshops Chen T, Li Z, Zhou H, Chen J, Luo X, Li X, Zhang X (2018) Towards saving money in using smart contracts. In: Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results. Association for Computing Machinery, New York, pp 81–84 Cheng S, Shi W, Zhang H (2019) Voltimebank: A volunteer system for mutual pension based on blockchain. In: Proceedings of the 2019 International Conference on Blockchain Technology. Association for Computing Machinery, New York, pp 75–79 Ciocarlie G, Eldefrawy K, Lepoint T (2018) Blockcis—a blockchain-based cyber insurance system. In: Proceedings of the 2018 IEEE International Conference on Cloud Engineering (IC2E), Orlando, FL, USA, pp 17–20 Cuccuru P (2017) Beyond bitcoin: An early overview on smart contracts. I J Law Inform Technol 25(3):179–195 Dagher GG, Mohler J, Milojkovic M, Marella PB (2018) Ancile: Privacy-preserving framework for access control and interoperability of electronic health records using blockchain technology. Sustainable Cities and Society 39:283–297 Dangl A Top trends 2020: Hyperautomation and smart contracts. Available online at https://www.fabasoft.com/en/news/blog/top-trends-2020-hyperautomation-and-smart-contracts (2019). Last accessed: 2020-10-07 Dasaklis TK, Casino F, Patsakis C (2019) Defining granularity levels for supply chain traceability based on iot and blockchain. In: Proceedings of the International Conference on Omni-Layer Intelligent Systems. Association for Computing Machinery, New York, pp 184–190 DHarz D, Knottenbelt W (2018) Towards safer smart contracts: A survey of languages and verification methods. arXiv preprint arXiv:1809.09805 Dickerson T, Gazzillo P, Herlihy M, Koskinen E (2019) Adding concurrency to smart contracts. Distrib Comput 33:1–17 Dryja T, Glasbergen G-J, Lovejoy J Layer 2 - the lightning network. Available online at https://dci.mit.edu/lightning-network/ (2019). Last accessed: 2020-10-20 Dziembowski S, Eckey L, Faust S (2018) Fairswap: How to fairly exchange digital goods. In: Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery, New York, pp 967–984 Ellul J, Pace GJ (2018) Alkylvm: A virtual machine for smart contract blockchain connected internet of things. In: 2018 9Th IFIP International Conference on New Technologies, Mobility and Security (NTMS), pp 1–4 Eltayieb N, Elhabob R, Hassan A, Li F (2020) A blockchain-based attribute-based signcryption scheme to secure data sharing in the cloud. J Syst Archit 102:101653 Fabasoft: Fabasoft contracts. Available online at https://www.fabasoft.com/en/products/fabasoft-contracts (2020). Last accessed: 2020-10-07 Farooq MS, Khan M, Abid A (2020) A framework to make charity collection transparent and auditable using blockchain technology, vol 83 Feng X, Wang Q, Zhu X, Wen S (2019) Bug searching in smart contract. arXiv preprint arXiv:1905.00799 Gao Z, Xu L, Chen L, Shah N, Lu Y, Shi W (2017) Scalable blockchain based smart contract execution. In: 2017 IEEE 23Rd international conference on parallel and distributed systems (ICPADS), pp 352–359 GDPR (2016) Regulation (eu) 2016/679 of the european parliament and of the council of 27 april 2016 on the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing directive 95/46. Official Journal of the European Union (OJ) 59:1–88 Guo H, Meamari E, Shen CC (2019) Multi-authority attribute-based access control with smart contract. In: Proceedings of the 2019 International Conference on Blockchain Technology. Association for Computing Machinery, New York, pp 6–11 Gupta R, Tanwar S, Al-Turjman F, Italiya P, Nauman A, Kim SW (2020) Smart contract privacy protection using ai in cyber-physical systems: Tools, techniques and challenges. IEEE Access 8:24746–24772 Han S, Xu Z, Zeng Y, Chen L (2019) Fluid: A blockchain based framework for crowdsourcing. In: Proceedings of the 2019 International Conference on Management of Data. Association for Computing Machinery, New York, pp 1921–1924 Hasan H, AlHadhrami E, AlDhaheri A, Salah K, Jayaraman R (2019) Smart contract-based approach for efficient shipment management. Comput Ind Eng 136:149–159 Hu VC, Ferraiolo D, Kuhn R, Friedman AR, Lang AJ, Cogdell MM, Schnitzer A, Sandlin K, Miller R, Scarfone K et al (2013) Guide to attribute based access control (abac) definition and considerations (draft). NIST special publication 800(162):1–54 Hu Y, Liyanage M, Mansoor A, Thilakarathna K, Jourjon G, Seneviratne A (2018) Blockchain-based smart contracts-applications and challenges. arXiv preprint arXiv:1810.04699 Hwang GH, Tien PC, Tang YH (2020) Blockchain-based automatic indemnification mechanism based on proof of violation for cloud storage services. In: Proceedings of the 2020 The 2nd International Conference on Blockchain Technology. Association for Computing Machinery, New York, pp 90–94 Islam MN, Kundu S (2019) Enabling ic traceability via blockchain pegged to embedded puf. ACM Trans. Des. Autom. Electron. Syst 24(3):1–23 Javaid U, Aman MN, Sikdar B (2018) Blockpro: Blockchain based data provenance and integrity for secure iot environments. In: Proceedings of the 1st Workshop on Blockchain-Enabled Networked Sensor Systems. Association for Computing Machinery, New York, pp 13–18 Javaid U, Siang AK, Aman MN, Sikdar B (2018) Mitigating lot device based ddos attacks using blockchain. In: Proceedings of the 1st Workshop on Cryptocurrencies and Blockchains for Distributed Systems. Association for Computing Machinery, New York, pp 71–76 Jentzsch C (2016) Decentralized autonomous organization to automate governance. White paper Jiang B, Liu Y, Chan WK (2018) Contractfuzzer: Fuzzing smart contracts for vulnerability detection. In: Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering. Association for Computing Machinery, New York, pp 259–269 Kolluri A, Nikolic I, Sergey I, Hobor A, Saxena P (2019) Exploiting the laws of order in smart contracts. In: Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis. Association for Computing Machinery, New York, pp 363–373 Kosba A, Miller A, Shi E, Wen Z, Papamanthou C (2016) Hawk: The blockchain model of cryptography and privacy-preserving smart contracts. In: 2016 IEEE Symposium on security and privacy (SP), IEEE, pp 839–858 Leng J, Jiang P, Xu K, Liu Q, Zhao JL, Bian Y, Shi R (2019) Makerchain: A blockchain with chemical signature for self-organizing process in social manufacturing. J Clean Prod 234:7676778 Levi SD, Lipton AB (2018) An introduction to smart contracts and their potential and inherent limitations. In: Harvard law school forum on corporate governance & financial regulation Lewis A A gentle introduction to smart contracts. Available online at https://bitsonblocks.net/2016/02/01/gentle-introduction-smart-contracts/https://bitsonblocks.net/2016/02/01/gentle-introduction-smart-contracts/ (2016). Last accessed: 2020-10-07 Lin J, Shen Z, Zhang A, Chai Y (2018) Blockchain and iot based food traceability for smart agriculture. In: Proceedings of the 3rd International Conference on Crowd Science and Engineering. Association for Computing Machinery, New York Liu C, Liu H, Cao Z, Chen Z, Chen B, Roscoe B (2018) Reguard: Finding reentrancy bugs in smart contracts. In: Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings. Association for Computing Machinery, New York, pp 65–68 Liu H, Zhang Y, Zheng S, Li Y (2019) Electric vehicle power trading mechanism based on blockchain and smart contract in v2g network. IEEE Access 7:160546–160558 Liu J, Liu Z (2019) A survey on security verification of blockchain smart contracts. IEEE Access 7:77894–77904 Liu X, Muhammad K, Lloret J, Chen YW, Yuan SM (2019) Elastic and cost-effective data carrier architecture for smart contract in blockchain. Futur Gener Comput Syst 100:590–599 Loukil F, Ghedira-Guegan C, Boukadi K, Benharkat AN (2018) Towards an end-to-end iot data privacy-preserving framework using blockchain technology. In: International Conference on Web Information Systems Engineering. Springer, Berlin, pp 68–78 Luu L, Chu DH, Olickel H, Saxena P, Hobor A (2016) Making smart contracts smarter. In: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery, New York, pp 254–269 Macrinici D, Cartofeanu C, Gao S (2018) Smart contract applications within blockchain technology: A systematic mapping study. Telematics Inform 35(8):2337–2354 Maesa DDF, Mori P, Ricci L (2019) A blockchain based approach for the definition of auditable access control systems. Computers & Security 84:93–119 Memoria F Smartbillions challenges hackers with 1,500 ether reward, gets hacked and pulls most of it out. Available online at https://www.ccn.com/smartbillions-challenges-hackers-1500-ether-reward-gets-hacked-pulls/https://www.ccn.com/smartbillions-challenges-hackers-1500-ether-reward-gets-hacked-pulls/ (2017). Last accessed: 2020-10-20 Meng W, Wang J, Wang X, Liu J, Yu Z, Li J, Zhao Y, Chow SS (2018) Position paper on blockchain technology: Smart contract and applications. In: International Conference on Network and System Security, Springer, pp 474–483 Meskini F, Islamic RA (2019) Multi-agent based simulation of a smart insurance using blockchain technology. In: 2019 Third International Conference on Intelligent Computing in Data Sciences (ICDS), IEEE, pp 1–6 Missier P, Bajoudah S, Capossele A, Gaglione A, Nati M (2017) Mind my value: A decentralized infrastructure for fair and trusted iot data trading. In: Proceedings of the Seventh International Conference on the Internet of Things. Association for Computing Machinery, New York Mohanta BK, Panda SS, Jena D (2018) An overview of smart contract and use cases in blockchain technology. In: 9Th international conference on computing, communication and networking technologies, ICCCNT 2018, bengaluru, india, july 10-12, 2018, IEEE, pp 1–4 Muneeza A, Arshad NA, Arifin AT et al (2018) The application of blockchain technology in crowdfunding: Towards financial inclusion via technology. Int J Manag Appl Res 5(2):82–98 Murray Y, Anisi DA (2019) Survey of formal verification methods for smart contracts on blockchain. In: 10Th IFIP international conference on new technologies, mobility and security, NTMS 2019, canary islands, spain, june 24-26, 2019, IEEE, pp 1–6 Nakamoto S Bitcoin: A peer-to-peer electronic cash system. Available online at https://bitcoin.org/bitcoin.pdf (2008). Last accessed: 2020-10-20 Nizamuddin N, Salah K, Azad] MA, Arshad J, Rehman M (2019) Decentralized document version control using ethereum blockchain and ipfs. Comput Electr Eng 76:183–197 Nxt community: Nxt whitepaper. Available online at https://nxtdocs.jelurida.com/Nxt_Whitepaper (2016). Last accessed: 2020-10-07 Omar AA, Bhuiyan MZA, Basu A, Kiyomoto S, Rahman MS (2019) Privacy-friendly platform for healthcare data in cloud based on blockchain environment. Futur Gener Comput Syst 95:511–521 Osterland T, Rose T (2020) Model checking smart contracts for ethereum. Pervasive and Mobile Computing 63:101129 Ouaddah A, Elkalam AA, Ouahman AA (2017) Harnessing the power of blockchain technology to solve iot security & privacy issues. In: Proceedings of the Second International Conference on Internet of Things, Data and Cloud Computing, ICC’17. Association for Computing Machinery, New York Panja S, Bag S, Hao F, Roy B (2020) A smart contract system for decentralized borda count voting. IEEE Trans Eng Manag 67(4):1323–1339 Poon J, Buterin V (2017) Plasma: Scalable autonomous smart contracts, pp 283–295 Praitheeshan P, Pan L, Yu J, Liu J, Doss R (2019) Security analysis methods on ethereum smart contract vulnerabilities: A survey. arXiv preprint arXiv:1908.08605 Regnath E, Steinhorst S (2018) Smaconat: Smart contracts in natural language. In: 2018 Forum on specification & design languages (FDL), IEEE, pp 5–16 Reyna A, Martín C, Chen J, Soler E, Díaz M (2018) On blockchain and its integration with iot. challenges and opportunities. Future Gener Comput Syst 88:173–190 Rieth Y Payment systems: Visa vs. bitcoin. Available online at https://decenter.org/en/payment-systems-visa-vs-bitcoin (2018). Last accessed: 2020-10-10 Rouhani S, Deters R (2019) Security, performance, and applications of smart contracts: A systematic survey. IEEE Access 7:50759–50779 Saleh H, Avdoshin S, Dzhonov A (2019) Platform for tracking donations of charitable foundations based on blockchain technology. In: 2019 Actual problems of systems and software engineering (APSSE), IEEE, pp 182–187 Schrans F, Eisenbach S, Drossopoulou S (2018) Writing safe smart contracts in flint. In: Conference companion of the 2nd international conference on art, science, and engineering of programming, pp 218–219 Scoca V, Uriarte RB, De Nicola R (2017) Smart contract negotiation in cloud computing. In: 2017 IEEE 10Th international conference on cloud computing (CLOUD), pp 592–599 Sergey I, Nagaraj V, Johannsen J, Kumar A, Trunov A, Hao KCG (2019) Safer smart contract programming with scilla. Proc. ACM Program. Lang 3(OOPSLA) Shariar A, Imran MA, Paul P, Rahman A (2020) A decentralized computational system built on blockchain for educational institutions. In: Proceedings of the International Conference on Computing Advancements, ICCA. Association for Computing Machinery, New York, p 2020 Shi F, Qin Z, Wu D, McCann J (2018) Mpcstoken: Smart contract enabled fault-tolerant incentivisation for mobile p2p crowd services. In: 2018 IEEE 38Th international conference on distributed computing systems (ICDCS), pp 961–971 Shi N, Tan L, Li W, Qi X, Yu K (2020) A blockchain-empowered aaa scheme in the large-scale hetnet. Digital Communications and Networks Singh A, Parizi RM, Zhang Q, Choo KKR, Dehghantanha A (2020) Blockchain smart contracts formalization: Approaches and challenges to address vulnerabilities. Computers & Security 88:101654 Singla V, Malav IK, Kaur J, Kalra S (2019) Develop leave application using blockchain smart contract. In: 2019 11Th international conference on communication systems networks (COMSNETS), pp 547–549 Sirisha NS, Agarwal T, Monde R, Yadav R, Hande R (2019) Proposed solution for trackable donations using blockchain. In: 2019 International conference on nascent technologies in engineering (ICNTE), IEEE, pp 1–5 TE-FOOD: Halal food companies are going to blockchain. Available online at https://cointelegraph.com/press-releases/halal-food-companies-are-going-to-blockchain (2018). Last accessed: 2020-10-01 Team T. Truffle: Ethereum development framework. Available online at https://github.com/trufflesuite/truffle (2016). Last accessed: 2020-10-20 Trotter L, Harding M, Elsden C, Davies N, Speed C (2020) A mobile platform for event-driven donations using smart contracts. In: Proceedings of the 21st International Workshop on Mobile Computing Systems and Applications. Association for Computing Machinery, New York, p 108 Udokwu C, Kormiltsyn A, Thangalimodzi K, Norta A (2018) The state of the art for blockchain-enabled smart-contract applications in the organization. In: 2018 Ivannikov ispras open conference (ISPRAS), IEEE, pp 137–144 Wang EK, Liang Z, Chen CM, Kumari S, Khan MK (2020) Porx: A reputation incentive scheme for blockchain consensus of iiot. Futur Gener Comput Syst 102:140–151 Wang H, Guo C, Cheng S (2019) Loc — a new financial loan management system based on smart contracts. Futur Gener Comput Syst 100:648–655 Wang P, Liu X, Chen J, Zhan Y, Jin Z (2018) Qos-aware service composition using blockchain-based smart contracts. In: Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings. Association for Computing Machinery, New York, pp 296–297 Wang S, Yuan Y, Wang X, Li J, Qin R, Wang F (2018) An overview of smart contract: Architecture, applications, and future trends. In: 2018 IEEE Intelligent vehicles symposium, IV 2018, changshu, suzhou, china, june 26-30, 2018, IEEE, pp 108–113 Wang X, Yang W, Noor S, Chen C, Guo M, [van Dam] KH (2019) Blockchain-based smart contract for energy demand management. Energy Procedia 158:2719–2724. Innovative Solutions for Energy Transitions Watanabe H, Fujimura S, Nakadaira A, Miyazaki Y, Akutsu A, Kishigami JJ (2015) Blockchain contract: A complete consensus using blockchain. In: 2015 IEEE 4Th Global Conference on Consumer Electronics (GCCE), IEEE, pp 577–578 Westerkamp M, Victor F, Küpper A (2019) Tracing manufacturing processes using blockchain-based token compositions. Digital Communications and Networks WIRED: A 50 million hack just showed that the DAO was all too human. Available online at https://www.wired.com/2016/06/50-million-hack-just-showed-dao-human/ (2016). Last accessed: 2020-10-20 Wright K, Martinez M, Chadha U, Krishnamachari B (2018) Smartedge: A smart contract for edge computing. In: 2018 IEEE International conference on internet of things (ithings) and IEEE green computing and communications (greencom) and IEEE cyber, physical and social computing (CPSCom) and IEEE smart data (smartdata), pp 1685–1690 Xie W, Wang B, Ye Z, Wu W, You J, Zhou Q (2019) Simulation-based blockchain design to secure biopharmaceutical supply chain. In: Proceedings of the Winter Simulation Conference, IEEE Press, pp 797–808 Xiong W, Xiong L (2019) Smart contract based data trading mode using blockchain and machine learning. IEEE Access 7:102331–102344 Xu R, Lin X, Dong Q, Chen Y (2018) Constructing trustworthy and safe communities on a blockchain-enabled social credits system. In: Proceedings of the 15th EAI International Conference on Mobile and Ubiquitous Systems: Computing, Networking and Services. Association for Computing Machinery, New York, pp 449–453 Xu X, Lu Q, Liu Y, Zhu L, Yao H, Vasilakos AV (2019) Designing blockchain-based applications a case study for imported product traceability. Futur Gener Comput Syst 92:399–406 Yang Z, Lei H (2019) Fether: An extensible definitional interpreter for smart-contract verifications in coq. IEEE Access 7:37770–37791 Yeh K, Su C, Hou J, Chiu W, Chen C (2018) A robust mobile payment scheme with smart contract-based transaction repository. IEEE Access 6:59394–59404 Yu K, Tan L, Shang X, Huang J, Srivastava G, Chatterjee P (2020) Efficient and privacy-preserving medical research support platform against covid-19: A blockchain-based approach. IEEE Consumer Electronics Magazine Yu KP, Tan L, Aloqaily M, Yang H, Jararweh Y (2021) Blockchain-enhanced data sharing with traceable and direct revocation in iiot. IEEE Transactions on Industrial Informatics Zhang F, Cecchetti E, Croman K, Juels A, Shi E (2016) Town crier: An authenticated data feed for smart contracts. In: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. Association for Computing Machinery, New York, pp 270–282 Zhang Y, Kasahara S, Shen Y, Jiang X, Wan J (2019) Smart contract-based access control for the internet of things. IEEE Internet of Things Journal 6(2):1594–1605 Zhao S, O’Mahony D (2018) Bmcprotector: A blockchain and smart contract based application for music copyright protection. In: Proceedings of the 2018 International Conference on Blockchain Technology and Application. Association for Computing Machinery, New York, pp 1–5 Zhao Y, Liu Y, Tian A, Yu Y, Du X (2019) Blockchain based privacy-preserving software updates with proof-of-delivery for internet of things. Journal of Parallel and Distributed Computing 132:141–149 Zheng Z, Xie S, Dai HN, Chen W, Chen X, Weng J, Imran M (2020) An overview on smart contracts: Challenges, advances and platforms. Futur Gener Comput Syst 105:475–491 Zhou H, de Laat C, Zhao Z (2018) Trustworthy cloud service level agreement enforcement with blockchain based smart contract. In: 2018 IEEE International Conference on Cloud Computing Technology and Science (cloudcom), pp 255–260 Zichichi M, Contu M, Ferretti S, DAngelo G (2019) Likestarter: A smart-contract based social dao for crowdfunding. In: IEEE INFOCOM 2019 - IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS), pp 313–318 Zou W, Lo D, Kochhar PS, Le XBD, Xia X, Feng Y, Chen Z, Xu B (2019) Smart contract development: Challenges and opportunities. IEEE Transactions on Software Engineering