{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,31]],"date-time":"2026-03-31T14:06:18Z","timestamp":1774965978869,"version":"3.50.1"},"reference-count":96,"publisher":"Springer Science and Business Media LLC","issue":"4","license":[{"start":{"date-parts":[[2025,4,8]],"date-time":"2025-04-08T00:00:00Z","timestamp":1744070400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2025,4,8]],"date-time":"2025-04-08T00:00:00Z","timestamp":1744070400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100005727","name":"Universidade de Coimbra","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100005727","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2025,7]]},"abstract":"<jats:title>Abstract<\/jats:title>\n          <jats:p>Smart contracts have accelerated the adoption of blockchain technology across various domains by enabling coded agreements between transaction participants. However, increased software defects and vulnerabilities in smart contracts, driven by developer inexperience with languages like Solidity and a lack of effective detection tools, pose significant risks. Given the high value of assets managed on blockchain (e.g., cryptocurrencies), these vulnerabilities can lead to severe consequences. Researchers and practitioners have proposed numerous smart contract design patterns to mitigate certain faults or vulnerabilities. Despite these efforts, it remains unclear which types of defects these patterns target and how effectively they address the wide range of existing smart contract security vulnerabilities. In this paper, we review the state of the art in smart contract design patterns, categorizing them and analyzing their effectiveness in mitigating known security vulnerabilities. Our findings reveal that only five patterns directly aim to prevent security vulnerabilities, collectively addressing just 6 out of 94 security issues identified by OpenSCV (a state-of-the-art vulnerability taxonomy), highlighting the need for further research on smart contract security design patterns.<\/jats:p>","DOI":"10.1007\/s10664-025-10646-w","type":"journal-article","created":{"date-parts":[[2025,4,8]],"date-time":"2025-04-08T21:34:03Z","timestamp":1744148043000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":11,"title":["A systematic review on smart contracts security design patterns"],"prefix":"10.1007","volume":"30","author":[{"ORCID":"https:\/\/orcid.org\/0009-0007-6177-640X","authenticated-orcid":false,"given":"Sadaf","family":"Azimi","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0009-0002-4272-7147","authenticated-orcid":false,"given":"Ali","family":"Golzari","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8376-6711","authenticated-orcid":false,"given":"Naghmeh","family":"Ivaki","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0011-9901","authenticated-orcid":false,"given":"Nuno","family":"Laranjeiro","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2025,4,8]]},"reference":[{"key":"10646_CR1","doi-asserted-by":"publisher","unstructured":"Abreu AW, Coutinho EF (2020) A pattern adherence analysis to a blockchain web application. In: 2020 IEEE international conference on software architecture companion (ICSA-C), pp 103\u2013109. https:\/\/doi.org\/10.1109\/ICSA-C50368.2020.00028","DOI":"10.1109\/ICSA-C50368.2020.00028"},{"key":"10646_CR2","doi-asserted-by":"publisher","first-page":"85675","DOI":"10.1109\/ACCESS.2020.2992698","volume":"8","author":"H Al-Breiki","year":"2020","unstructured":"Al-Breiki H, Rehman MHU, Salah K, Svetinovic D (2020) Trustworthy blockchain oracles: review, comparison, and open research challenges. IEEE Access 8:85675\u20138568. https:\/\/doi.org\/10.1109\/ACCESS.2020.2992698","journal-title":"IEEE Access"},{"key":"10646_CR3","doi-asserted-by":"crossref","unstructured":"Amani S, B\u00e9gel 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, pp 66\u201377","DOI":"10.1145\/3176245.3167084"},{"key":"10646_CR4","doi-asserted-by":"publisher","first-page":"227","DOI":"10.1007\/978-3-031-17108-6_14","volume-title":"Software engineering and formal methods","author":"P Antonino","year":"2022","unstructured":"Antonino P, Ferreira J, Sampaio A, Roscoe AW (2022) Specification is law: safe creation and upgrade of ethereum smart contracts. In: Schlingloff BH, Chai M (eds) Software engineering and formal methods. Springer International Publishing, Cham, pp 227\u2013243"},{"key":"10646_CR5","doi-asserted-by":"publisher","unstructured":"Arga\u00f1araz M, Ber\u00f3n M, Pereira MJ, Henriques PR (2020) Detection of vulnerabilities in smart contracts specifications in ethereum platforms. In: 9th Symposium on Languages, Applications and Technologies (SLATE 2020), Schloss Dagstuhl\u2013Leibniz-Zentrum fuer Informatik, vol\u00a083, pp 1\u201316,https:\/\/doi.org\/10.4230\/OASIcs.SLATE.2020.2","DOI":"10.4230\/OASIcs.SLATE.2020.2"},{"key":"10646_CR6","doi-asserted-by":"publisher","unstructured":"Bandara HD, Xu X, Weber I (2020) Patterns for blockchain data migration. In: Proceedings of the European conference on pattern languages of programs 2020, Association for Computing Machinery, New York, NY, USA, EuroPLoP \u201920,https:\/\/doi.org\/10.1145\/3424771.3424796","DOI":"10.1145\/3424771.3424796"},{"key":"10646_CR7","doi-asserted-by":"publisher","unstructured":"Bartoletti M, Pompianu L (2017) An empirical analysis of smart contracts: Platforms, applications, and design patterns. In: Financial Cryptography and Data Security, Springer International Publishing, Cham, pp 494\u2013509. https:\/\/doi.org\/10.48550\/arXiv.2102.09810","DOI":"10.48550\/arXiv.2102.09810"},{"key":"10646_CR8","doi-asserted-by":"publisher","unstructured":"Bartoletti M, Bracciali A, Lepore C, Scalas A, Zunino R (2020) A formal model of algorand smart contracts. https:\/\/doi.org\/10.48550\/arXiv.2009.12140arxiv:2009.12140","DOI":"10.48550\/arXiv.2009.12140"},{"key":"10646_CR9","unstructured":"Baryshev Y (2019) Design patterns security analysis for blockchain-based applications development with javascript and solidity"},{"key":"10646_CR10","unstructured":"Bloo F (2018) Towards updatable smart contracts"},{"key":"10646_CR11","doi-asserted-by":"publisher","unstructured":"Blum F, Severin B, Hettmer M, H\u00fcckinghaus P, Gruhn V (2020) Building hybrid dapps using blockchain tactics -the meta-transaction example. In: 2020 IEEE international conference on blockchain and cryptocurrency (ICBC), pp 1\u20135. https:\/\/doi.org\/10.1109\/ICBC48266.2020.9169423","DOI":"10.1109\/ICBC48266.2020.9169423"},{"key":"10646_CR12","unstructured":"Britten D, Sj\u00f6berg V, Reeves S (2021) Using coq to enforce the checks-effects-interactions pattern in deepsea smart contracts. In: FMBC 2021"},{"key":"10646_CR13","doi-asserted-by":"publisher","unstructured":"Bui VC, Wen S, Yu J, Xia X, Haghighi MS, Xiang Y (2021) Evaluating upgradable smart contract. In: 2021 IEEE international conference on blockchain (Blockchain), pp 252\u2013256. https:\/\/doi.org\/10.1109\/Blockchain53845.2021.00041","DOI":"10.1109\/Blockchain53845.2021.00041"},{"key":"10646_CR14","doi-asserted-by":"publisher","unstructured":"Chan E, Lesani M (2021) Brief announcement: Brokering with hashed timelock contracts is np-hard. In: Proceedings of the 2021 ACM symposium on principles of distributed computing, Association for Computing Machinery, New York, NY, USA, PODC\u201921, pp 199-202. https:\/\/doi.org\/10.1145\/3465084.3467952","DOI":"10.1145\/3465084.3467952"},{"key":"10646_CR15","doi-asserted-by":"publisher","first-page":"185","DOI":"10.1007\/978-3-030-59638-5_13","volume-title":"Blockchain - ICBC 2020","author":"A Chatterjee","year":"2020","unstructured":"Chatterjee A, Pitroda Y, Parmar M (2020) Dynamic role-based access control for decentralized applications. In: Chen Z, Cui L, Palanisamy B, Zhang LJ (eds) Blockchain - ICBC 2020. Springer International Publishing, Cham, pp 185\u2013197"},{"issue":"3","key":"10646_CR16","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3391195","volume":"53","author":"H Chen","year":"2020","unstructured":"Chen H, Pendleton M, Njilla L, Xu S (2020) A survey on ethereum systems security: vulnerabilities, attacks, and defenses. ACM Comput Surv (CSUR) 53(3):1\u201343","journal-title":"ACM Comput Surv (CSUR)"},{"issue":"1","key":"10646_CR17","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1109\/TSE.2020.2989002","volume":"48","author":"J Chen","year":"2022","unstructured":"Chen J, Xia X, Lo D, Grundy J, Luo X, Chen T (2022) Defining smart contract defects on ethereum. IEEE Trans Softw Eng 48(1):327\u201334. https:\/\/doi.org\/10.1109\/TSE.2020.2989002","journal-title":"IEEE Trans Softw Eng"},{"key":"10646_CR18","doi-asserted-by":"publisher","unstructured":"Dika A, Nowostawski M (2018) Security vulnerabilities in ethereum smart contracts. 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 955\u2013962. https:\/\/doi.org\/10.1109\/Cybermatics_2018.2018.00182","DOI":"10.1109\/Cybermatics_2018.2018.00182"},{"issue":"4","key":"10646_CR19","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/s10664-024-10485-1","volume":"29","author":"AM Ebrahimi","year":"2024","unstructured":"Ebrahimi AM, Adams B, Oliva GA, Hassan AE (2024) A large-scale exploratory study on the proxy pattern in ethereum. Empir Softw Eng 29(4):1\u201351","journal-title":"Empir Softw Eng"},{"issue":"6","key":"10646_CR20","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3530813","volume":"55","author":"M Fahmideh","year":"2022","unstructured":"Fahmideh M, Grundy J, Ahmad A, Shen J, Yan J, Mougouei D, Wang P, Ghose A, Gunawardana A, Aickelin U et al (2022) Engineering blockchain-based software systems: foundations, survey, and future directions. ACM Comput Surv 55(6):1\u201344","journal-title":"ACM Comput Surv"},{"key":"10646_CR21","unstructured":"Ferreira\u00a0Torres C (2022) From smart to secure contracts: Automated security assessment and improvement of ethereum smart contracts. PhD thesis, University of Luxembourg, Luxembourg"},{"key":"10646_CR22","doi-asserted-by":"crossref","unstructured":"Gamma E, Helm R, Johnson R, Vlissides J (1993) Design patterns: abstraction and reuse of object-oriented design. In: ECOOP\u201993-Object-Oriented Programming: 7th European Conference Kaiserslautern, Germany, July 26\u201330, 1993 Proceedings 7, Springer, pp 406\u2013431","DOI":"10.1007\/3-540-47910-4_21"},{"key":"10646_CR23","doi-asserted-by":"publisher","unstructured":"Gao Z, Zhuang Z, Lin Y, Rui L, Yang Y, Zhao C, Mo Z (2021) Select-storage: a new oracle design pattern on blockchain. In: 2021 IEEE 20th international conference on trust, security and privacy in computing and communications (TrustCom), pp 1177\u20131184. https:\/\/doi.org\/10.1109\/TrustCom53373.2021.00159","DOI":"10.1109\/TrustCom53373.2021.00159"},{"key":"10646_CR24","doi-asserted-by":"crossref","unstructured":"Goldfeder S, Bonneau J, Gennaro R, Narayanan A (2017) Escrow protocols for cryptocurrencies: How to buy physical goods using bitcoin. In: Financial cryptography and data security: 21st international conference, FC 2017, Sliema, Malta, April 3-7, 2017, Revised Selected Papers 21, Springer, pp 321\u2013339","DOI":"10.1007\/978-3-319-70972-7_18"},{"key":"10646_CR25","doi-asserted-by":"publisher","unstructured":"Guida L, Daniel F (2019) Supporting reuse of smart contracts through service orientation and assisted development. In: 2019 IEEE International conference on decentralized applications and infrastructures (DAPPCON), pp 59\u201368. https:\/\/doi.org\/10.1109\/DAPPCON.2019.00017","DOI":"10.1109\/DAPPCON.2019.00017"},{"issue":"5","key":"10646_CR26","doi-asserted-by":"publisher","first-page":"1038","DOI":"10.1145\/502102.502106","volume":"48","author":"T Hickey","year":"2001","unstructured":"Hickey T, Ju Q, Van Emden MH (2001) Interval arithmetic: from principles to implementation. J ACM 48(5):1038\u20131068. https:\/\/doi.org\/10.1145\/502102.502106","journal-title":"J ACM"},{"key":"10646_CR27","doi-asserted-by":"crossref","unstructured":"Horny\u00e1k O, Alkhoury GF (2020) Smart contracts in the automotive industry. In: Vehicle and automotive engineering, Springer, pp 148\u2013157","DOI":"10.1007\/978-981-15-9529-5_13"},{"issue":"2","key":"10646_CR28","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3579035","volume":"20","author":"J Huang","year":"2024","unstructured":"Huang J, Kong L, Wang J, Chen G, Gao J, Huang G, Khan MK (2024) Secure data sharing over vehicular networks based on multi-sharding blockchain. ACM Trans Sensor Netw 20(2):1\u201323","journal-title":"ACM Trans Sensor Netw"},{"key":"10646_CR29","first-page":"135","volume-title":"Gang of four design patterns","author":"J Hunt","year":"2013","unstructured":"Hunt J, Hunt J (2013) Gang of four design patterns. Patterns for Practical Reuse and Design, Scala Design Patterns, pp 135\u2013136"},{"key":"10646_CR30","unstructured":"Imeri A, Lamont J, Agoulmine N, Khadraoui D (2019) Model of dynamic smart contract for permissioned blockchains. In: PoEM (Forum), pp 1\u201315"},{"key":"10646_CR31","doi-asserted-by":"publisher","unstructured":"Jurgelaitis M, \u010deponien\u0117 L, Butkien\u0117 R (2022) Solidity code generation from uml state machines in model-driven smart contract development. IEEE Access 10:33465\u20133348. https:\/\/doi.org\/10.1109\/ACCESS.2022.3162227","DOI":"10.1109\/ACCESS.2022.3162227"},{"issue":"11","key":"10646_CR32","doi-asserted-by":"publisher","first-page":"4291","DOI":"10.1109\/TSE.2021.3116808","volume":"48","author":"N Kannengie\u00dfer","year":"2022","unstructured":"Kannengie\u00dfer N, Lins S, Sander C, Winter K, Frey H, Sunyaev A (2022) Challenges and common solutions in smart contract development. IEEE Trans Softw Eng 48(11):4291\u20134318. https:\/\/doi.org\/10.1109\/TSE.2021.3116808","journal-title":"IEEE Trans Softw Eng"},{"key":"10646_CR33","doi-asserted-by":"publisher","first-page":"2901","DOI":"10.1007\/s12083-021-01127-0","volume":"14","author":"SN Khan","year":"2021","unstructured":"Khan SN, Loukil F, Ghedira-Guegan C, Benkhelifa E, Bani-Hani A (2021) Blockchain smart contracts: applications, challenges, and future trends. Peer Peer Network Appl 14:2901\u20132925","journal-title":"Peer Peer Network Appl"},{"key":"10646_CR34","first-page":"33","volume-title":"Procedures for performing systematic reviews","author":"B Kitchenham","year":"2004","unstructured":"Kitchenham B (2004) Procedures for performing systematic reviews. UK, Keele Univ, Keele, p 33"},{"key":"10646_CR35","doi-asserted-by":"publisher","unstructured":"Kov\u00e1cs AM, Seres IA (2024) Anonymity analysis of the umbra stealth address scheme on ethereum. Association for Computing Machinery, New York, NY, USA. https:\/\/doi.org\/10.1145\/3589335.3651963","DOI":"10.1145\/3589335.3651963"},{"key":"10646_CR36","doi-asserted-by":"publisher","unstructured":"Lamken D, Wagner T, Hoiss T, Seidenfad K, Hermann A, Kus M, Lechner U (2021) Design patterns and framework for blockchain integration in supply chains. In: 2021 IEEE international conference on blockchain and cryptocurrency (ICBC), pp 1\u20133. https:\/\/doi.org\/10.1109\/ICBC51069.2021.9461062","DOI":"10.1109\/ICBC51069.2021.9461062"},{"key":"10646_CR37","doi-asserted-by":"publisher","unstructured":"Li C, Palanisamy B, Xu R (2019) Scalable and privacy-preserving design of on\/off-chain smart contracts. In: 2019 IEEE 35th international conference on data engineering workshops (ICDEW), pp 7\u201312. https:\/\/doi.org\/10.1109\/ICDEW.2019.00-43","DOI":"10.1109\/ICDEW.2019.00-43"},{"key":"10646_CR38","doi-asserted-by":"publisher","unstructured":"Liu Y, Lu Q, Xu X, Zhu L, Yao H (2018) Applying design patterns in smart contracts. In: Chen S, Wang H, Zhang LJ (eds) Blockchain \u2013 ICBC 2018, Springer International Publishing, Cham, pp 92\u2013106. https:\/\/doi.org\/10.1007\/978-3-319-94478-4_7","DOI":"10.1007\/978-3-319-94478-4_7"},{"key":"10646_CR39","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3424771.3424802","volume":"2020","author":"Y Liu","year":"2020","unstructured":"Liu Y, Lu Q, Paik HY, Xu X (2020) Design patterns for blockchain-based self-sovereign identity. Proc Eur Conf Pattern Lang Prog 2020:1\u201314. https:\/\/doi.org\/10.1145\/3424771.3424802","journal-title":"Proc Eur Conf Pattern Lang Prog"},{"issue":"5","key":"10646_CR40","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1109\/MS.2020.2992783","volume":"37","author":"Y Liu","year":"2020","unstructured":"Liu Y, Lu Q, Paik HY, Xu X, Chen S, Zhu L (2020) Design pattern as a service for blockchain-based self-sovereign identity. IEEE Softw 37(5):30\u20133. https:\/\/doi.org\/10.1109\/MS.2020.2992783","journal-title":"IEEE Softw"},{"key":"10646_CR41","unstructured":"Lopez\u00a0Marin JC (2022) Upgradeable smart contracts design patterns for dapps architectures"},{"key":"10646_CR42","doi-asserted-by":"publisher","unstructured":"Lu Q, Xu X, Liu Y, Zhang W (2018) Design pattern as a service for blockchain applications. In: 2018 IEEE international conference on data mining workshops (ICDMW), pp 128\u2013135. https:\/\/doi.org\/10.1109\/ICDMW.2018.00025","DOI":"10.1109\/ICDMW.2018.00025"},{"key":"10646_CR43","doi-asserted-by":"publisher","unstructured":"Lu Q, Xu X, Bandara HD, Chen S, Zhu L (2022) Patterns for blockchain-based payment applications. In: Proceedings of the 26th european conference on pattern languages of programs, Association for Computing Machinery, New York, NY, USA, EuroPLoP \u201921. https:\/\/doi.org\/10.1145\/3489449.3490006","DOI":"10.1145\/3489449.3490006"},{"key":"10646_CR44","doi-asserted-by":"publisher","unstructured":"Marchesi L, Marchesi M, Destefanis G, Barabino G, Tigano D (2020) Design patterns for gas optimization in ethereum. In: 2020 IEEE international workshop on blockchain oriented software engineering (IWBOSE), pp 9\u201315. https:\/\/doi.org\/10.1109\/IWBOSE50093.2020.9050163","DOI":"10.1109\/IWBOSE50093.2020.9050163"},{"key":"10646_CR45","first-page":"270","volume-title":"Principles of Security and Trust","author":"A Mavridou","year":"2018","unstructured":"Mavridou A, Laszka A (2018) Tool demonstration: fsolidm for designing secure ethereum smart contracts. In: Bauer L, K\u00fcsters R (eds) Principles of Security and Trust. Springer International Publishing, Cham, pp 270\u2013277"},{"key":"10646_CR46","doi-asserted-by":"publisher","unstructured":"Van\u00a0der Meyden R, Maher MJ (2021) Architecture for smart safe contracts. In: 2021 3rd Conference on blockchain research & applications for innovative networks and services (BRAINS) pp 145\u2013148. https:\/\/doi.org\/10.1109\/BRAINS52497.2021.9569831","DOI":"10.1109\/BRAINS52497.2021.9569831"},{"issue":"6","key":"10646_CR47","doi-asserted-by":"publisher","first-page":"4189","DOI":"10.1007\/s10586-022-03643-x","volume":"25","author":"Bhatia R Monika","year":"2022","unstructured":"Monika Bhatia R, Jain A, Singh B (2022) Hash time locked contract based asset exchange solution for probabilistic public blockchains. Cluster Comput 25(6):4189\u20134201","journal-title":"Cluster Comput"},{"key":"10646_CR48","unstructured":"Moura TAP (2020) Design patterns for ethereum smart contracts"},{"key":"10646_CR49","doi-asserted-by":"crossref","unstructured":"M\u00fchlberger R, Bachhofner S, Castell\u00f3\u00a0Ferrer E, Di\u00a0Ciccio C, Weber I, W\u00f6hrer M, Zdun U (2020) Foundational oracle patterns: Connecting blockchain to the off-chain world. In: Business process management: blockchain and robotic process automation forum: BPM 2020 Blockchain and RPA Forum, Seville, Spain, September 13\u201318, 2020, Proceedings 18, Springer, pp 35\u201351","DOI":"10.1007\/978-3-030-58779-6_3"},{"key":"10646_CR50","doi-asserted-by":"publisher","unstructured":"N\u2019Da A, Matalonga S, Dahal K (2020) Characterizing the cost of introducing secure programming patterns and practices in ethereum. In: WorldCist\u201920 - 8th world conference on information systems and technologies, Springer, pp 25\u20133https:\/\/doi.org\/10.1007\/978-3-030-45691-7_3","DOI":"10.1007\/978-3-030-45691-7_3"},{"key":"10646_CR51","doi-asserted-by":"publisher","unstructured":"Ordo\u00f1ez-Guerrero AC, Mu\u00f1oz-Garzon JD, Roberto Dulce\u00a0Villarreal E, Bandi A, Ariel\u00a0Hurtado J (2022) Blockchain architectural concerns: a systematic mapping study. In: 2022 IEEE 19th International conference on software architecture companion (ICSA-C), pp 183\u2013192. https:\/\/doi.org\/10.1109\/ICSA-C54293.2022.00043","DOI":"10.1109\/ICSA-C54293.2022.00043"},{"key":"10646_CR52","unstructured":"Oru\u00e7 O, A\u00dfmann U, Troshani A (2022) Context-based role object pattern with on-chain smart contract programming. In: Konferenzband zum Scientific Track der Blockchain Autumn School 2022, Hochschule Mittweida, 2, pp 42\u201350"},{"key":"10646_CR53","doi-asserted-by":"crossref","unstructured":"Parmar M, Kaur HJ (2021) Comparative analysis of secured hash algorithms for blockchain technology and internet of things. Int J Adv Comput Sci Appl 12(3)","DOI":"10.14569\/IJACSA.2021.0120335"},{"issue":"4","key":"10646_CR54","first-page":"77","volume":"21","author":"M Penelova","year":"2021","unstructured":"Penelova M (2021) Access control models. Cybern Inf Technol 21(4):77\u2013104","journal-title":"Cybern Inf Technol"},{"key":"10646_CR55","unstructured":"Raab R (2021) Towards platform-agnostic smart contracts"},{"key":"10646_CR56","doi-asserted-by":"publisher","unstructured":"Rajasekar V, Sondhi S, Saad S, Mohammed S (2020) Emerging design patterns for blockchain applications. In: Proceedings of the 15th international conference on software technologies - ICSOFT, INSTICC, SciTePress, pp 242\u2013249. https:\/\/doi.org\/10.5220\/0009892702420249","DOI":"10.5220\/0009892702420249"},{"key":"10646_CR57","doi-asserted-by":"publisher","first-page":"814977","DOI":"10.3389\/fbloc.2022.814977","volume":"5","author":"H Rameder","year":"2022","unstructured":"Rameder H, Di Angelo M, Salzer G (2022) Review of automated vulnerability analysis of smart contracts on ethereum. Front Blockchain 5:814977","journal-title":"Front Blockchain"},{"key":"10646_CR58","doi-asserted-by":"crossref","unstructured":"Ren M, Ma F, Yin Z, Fu Y, Li H, Chang W, Jiang Y (2021) Making smart contract development more secure and easier. In: Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp 1360\u20131370","DOI":"10.1145\/3468264.3473929"},{"key":"10646_CR59","doi-asserted-by":"publisher","unstructured":"Sadaf A, Golzari A, Ivaki N, Laranjeiro N (2024) A Systematic Review on Smart Contracts Security Design Patterns - Supplementary Material.https:\/\/doi.org\/10.5281\/zenodo.13170977","DOI":"10.5281\/zenodo.13170977"},{"key":"10646_CR60","doi-asserted-by":"crossref","unstructured":"Samarati P, De\u00a0Vimercati SC (2000) Access control: Policies, models, and mechanisms. In: International school on foundations of security analysis and design, Springer, pp 137\u2013196","DOI":"10.1007\/3-540-45608-2_3"},{"issue":"2","key":"10646_CR61","doi-asserted-by":"publisher","first-page":"100120","DOI":"10.1016\/j.bcra.2022.100120","volume":"4","author":"NF Samreen","year":"2023","unstructured":"Samreen NF, Alalfi MH (2023) An empirical study on the complexity, security and maintainability of ethereum-based decentralized applications (dapps). Blockchain: Res Appl 4(2):100120. https:\/\/doi.org\/10.1016\/j.bcra.2022.100120","journal-title":"Blockchain: Res Appl"},{"key":"10646_CR62","doi-asserted-by":"publisher","first-page":"24416","DOI":"10.1109\/ACCESS.2020.2970495","volume":"8","author":"S Sayeed","year":"2020","unstructured":"Sayeed S, Marco-Gisbert H, Caira T (2020) Smart contract: attacks and protections. IEEE Access 8:24416\u20132442. https:\/\/doi.org\/10.1109\/ACCESS.2020.2970495","journal-title":"IEEE Access"},{"key":"10646_CR63","doi-asserted-by":"publisher","unstructured":"Singh A, Parizi RM, Zhang Q, Choo KKR, Dehghantanha A (2020) Blockchain smart contracts formalization: Approaches and challenges to address vulnerabilities. Comput Secur. https:\/\/doi.org\/10.1016\/j.cose.2019.101654https:\/\/www.sciencedirect.com\/science\/article\/pii\/S0167404818310927","DOI":"10.1016\/j.cose.2019.101654"},{"key":"10646_CR64","doi-asserted-by":"crossref","unstructured":"Six N, Correa-Restrepo C, Herbaut N, Salinesi C (2022a) An ontology for software patterns: Application to blockchain-based software development. In: International conference on enterprise design, operations, and computing, Springer, pp 284\u2013299","DOI":"10.1007\/978-3-031-26886-1_17"},{"key":"10646_CR65","doi-asserted-by":"publisher","unstructured":"Six N, Herbaut N, Salinesi C (2022b) Blockchain software patterns for the design of decentralized applications: a systematic literature review. vol\u00a03, p 10006. https:\/\/doi.org\/10.1016\/j.bcra.2022.100061","DOI":"10.1016\/j.bcra.2022.100061"},{"key":"10646_CR66","doi-asserted-by":"publisher","unstructured":"Songsom N, Werapun W, Suaboot J, Rattanavipanon N (2022) The swc-based security analysis tool for smart contract vulnerability detection. In: 2022 6th International conference on information technology (InCIT), pp 74\u201377. https:\/\/doi.org\/10.1109\/InCIT56086.2022.10067759","DOI":"10.1109\/InCIT56086.2022.10067759"},{"key":"10646_CR67","doi-asserted-by":"publisher","unstructured":"Sun J, Huang S, Zheng C, Wang T, Zong C, Hui Z (2022) Mutation testing for integer overflow in ethereum smart contracts. Tsinghua Sci Technol 27(1):27\u201340. https:\/\/doi.org\/10.26599\/TST.2020.9010036","DOI":"10.26599\/TST.2020.9010036"},{"issue":"4","key":"10646_CR68","doi-asserted-by":"publisher","first-page":"198","DOI":"10.1109\/MNET.011.2000473","volume":"35","author":"X Sun","year":"2021","unstructured":"Sun X, Yu FR, Zhang P, Sun Z, Xie W, Peng X (2021) A survey on zero-knowledge proof in blockchain. IEEE Netw 35(4):198\u2013205. https:\/\/doi.org\/10.1109\/MNET.011.2000473","journal-title":"IEEE Netw"},{"key":"10646_CR69","doi-asserted-by":"crossref","unstructured":"Tan B, Mariano B, Lahiri SK, Dillig I, Feng Y (2022) Soltype: refinement types for arithmetic overflow in solidity. Proc ACM Program Lang 6(POPL):1\u201329","DOI":"10.1145\/3498665"},{"key":"10646_CR70","doi-asserted-by":"publisher","first-page":"25973","DOI":"10.1109\/ACCESS.2022.3156015","volume":"10","author":"A Taylor","year":"2022","unstructured":"Taylor A, Kugler A, Marella PB, Dagher GG (2022) Vigilrx: a scalable and interoperable prescription management system using blockchain. IEEE Access 10:25973\u20132598. https:\/\/doi.org\/10.1109\/ACCESS.2022.3156015","journal-title":"IEEE Access"},{"key":"10646_CR71","doi-asserted-by":"publisher","unstructured":"T\u00f6berg JP, Schiffl J, Reiche F, Beckert B, Heinrich R, Reussner R (2022) Modeling and enforcing access control policies for smart contracts. In: 2022 IEEE international conference on decentralized applications and infrastructures (DAPPS), pp 38\u201347. https:\/\/doi.org\/10.1109\/DAPPS55202.2022.00013","DOI":"10.1109\/DAPPS55202.2022.00013"},{"key":"10646_CR72","unstructured":"Thirulokachander VR (2021) Impact of design patterns on code quality in blockchain-based applications"},{"key":"10646_CR73","doi-asserted-by":"publisher","unstructured":"Trojanowska N, Kedziora M, Hanif M, Song H (2020) Secure decentralized application development of blockchain-based games. In: 2020 IEEE 39th international performance computing and communications conference (IPCCC), pp 1\u20138. https:\/\/doi.org\/10.1109\/IPCCC50635.2020.9391556","DOI":"10.1109\/IPCCC50635.2020.9391556"},{"key":"10646_CR74","unstructured":"Verdonck M (2019) Demonstrating the importance of well-defined design patterns in smart contract development. In: Proceedings of the international workshop on value modeling and business ontologies (VMBO 2019), pp 1\u20135"},{"issue":"4","key":"10646_CR75","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1007\/s10664-024-10446-8","volume":"29","author":"FR Vidal","year":"2024","unstructured":"Vidal FR, Ivaki N, Laranjeiro N (2024) OpenSCV: an open hierarchical taxonomy for smart contract vulnerabilities. Empir Softw Eng 29(4):101. https:\/\/doi.org\/10.1007\/s10664-024-10446-8","journal-title":"Empir Softw Eng"},{"key":"10646_CR76","unstructured":"Volland F (2019) Solidity patterns. https:\/\/github.com\/fravoll\/solidity-patterns\/, Accessed 01-March-2020"},{"key":"10646_CR77","doi-asserted-by":"crossref","unstructured":"Wang G, Shi ZJ, Nixon M, Han S (2019a) Sok: Sharding on blockchain. In: Proceedings of the 1st ACM conference on advances in financial technologies, pp 41\u201361","DOI":"10.1145\/3318041.3355457"},{"key":"10646_CR78","doi-asserted-by":"publisher","unstructured":"Wang Z, Yang L, Wang Q, Liu D, Xu Z, Liu S (2019b) Artchain: Blockchain-enabled platform for art marketplace. In: 2019 IEEE international conference on blockchain (Blockchain), pp 447\u2013454. https:\/\/doi.org\/10.1109\/Blockchain.2019.00068","DOI":"10.1109\/Blockchain.2019.00068"},{"key":"10646_CR79","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/s11704-020-9284-9","volume":"15","author":"Z Wang","year":"2021","unstructured":"Wang Z, Jin H, Dai W, Choo KKR, Zou D (2021) Ethereum smart contract security research: survey and future research opportunities. Front Comput Sci 15:1\u201318","journal-title":"Front Comput Sci"},{"issue":"1","key":"10646_CR80","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1049\/iet-sen.2018.5446","volume":"14","author":"F Wedyan","year":"2020","unstructured":"Wedyan F, Abufakher S (2020) Impact of design patterns on software quality: a systematic literature review. IET Softw 14(1):1\u201317","journal-title":"IET Softw"},{"issue":"3","key":"10646_CR81","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3502741","volume":"21","author":"Q Wei","year":"2022","unstructured":"Wei Q, Li B, Chang W, Jia Z, Shen Z, Shao Z (2022) A survey of blockchain data management systems. ACM Trans Embedded Comput Syst (TECS) 21(3):1\u201328","journal-title":"ACM Trans Embedded Comput Syst (TECS)"},{"key":"10646_CR82","doi-asserted-by":"publisher","unstructured":"Wessling F, Ehmke C, Meyer O, Gruhn V (2019) Towards blockchain tactics: Building hybrid decentralized software architectures. In: 2019 IEEE international conference on software architecture companion (ICSA-C), pp 234\u2013237. https:\/\/doi.org\/10.1109\/ICSA-C.2019.00048","DOI":"10.1109\/ICSA-C.2019.00048"},{"key":"10646_CR83","doi-asserted-by":"publisher","unstructured":"W\u00f6hrer M, Zdun U (2018) Design patterns for smart contracts in the ethereum ecosystem. 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 1513\u20131520. https:\/\/doi.org\/10.1109\/Cybermatics_2018.2018.00255","DOI":"10.1109\/Cybermatics_2018.2018.00255"},{"key":"10646_CR84","doi-asserted-by":"publisher","unstructured":"W\u00f6hrer M, Zdun U (2020) Domain specific language for smart contract development. In: 2020 IEEE international conference on blockchain and cryptocurrency (ICBC), pp 1\u20139. https:\/\/doi.org\/10.1109\/ICBC48266.2020.9169399","DOI":"10.1109\/ICBC48266.2020.9169399"},{"key":"10646_CR85","unstructured":"William S (2008) Operating systems: internals and design principles (sisth edition)"},{"key":"10646_CR86","doi-asserted-by":"publisher","unstructured":"Wohrer M, Zdun U (2018) Smart contracts: security patterns in the ethereum ecosystem and solidity. In: 2018 International workshop on blockchain oriented software engineering (IWBOSE), pp 2\u20138. https:\/\/doi.org\/10.1109\/IWBOSE.2018.8327565","DOI":"10.1109\/IWBOSE.2018.8327565"},{"key":"10646_CR87","unstructured":"Wong D, Hemmel M (2018) DASP Top 10 of 2018. https:\/\/www.dasp.co, Accessed: 28-Sept-2023"},{"key":"10646_CR88","doi-asserted-by":"publisher","unstructured":"Worley CR, Skjellum A (2019) Opportunities, challenges, and future extensions for smart-contract design patterns. In: Abramowicz W, Paschke A (eds) Business information systems workshops, Springer International Publishing, Cham, pp 264\u2013276. https:\/\/doi.org\/10.1007\/978-3-030-04849-5_24","DOI":"10.1007\/978-3-030-04849-5_24"},{"key":"10646_CR89","doi-asserted-by":"publisher","unstructured":"Xu X, Pautasso C, Zhu L, Lu Q, Weber I (2018) A pattern collection for blockchain-based applications. In: Proceedings of the 23rd European conference on pattern languages of programs, pp 1\u201320. https:\/\/doi.org\/10.1109\/ICDMW.2018.00025","DOI":"10.1109\/ICDMW.2018.00025"},{"key":"10646_CR90","doi-asserted-by":"publisher","first-page":"108","DOI":"10.1007\/978-3-030-59638-5_8","volume-title":"Blockchain - ICBC 2020","author":"X Xu","year":"2020","unstructured":"Xu X, Bandara HMND, Lu Q, Zhang D, Zhu L (2020) Understanding and handling blockchain uncertainties. In: Chen Z, Cui L, Palanisamy B, Zhang LJ (eds) Blockchain - ICBC 2020. Springer International Publishing, Cham, pp 108\u2013124"},{"key":"10646_CR91","doi-asserted-by":"publisher","unstructured":"Xu X, Dilum\u00a0Bandara H, Lu Q, Weber I, Bass L, Zhu L (2021) A decision model for choosing patterns in blockchain-based applications. In: 2021 IEEE 18th international conference on software architecture (ICSA), pp 47\u201357. https:\/\/doi.org\/10.1109\/ICSA51549.2021.00013","DOI":"10.1109\/ICSA51549.2021.00013"},{"key":"10646_CR92","doi-asserted-by":"publisher","unstructured":"Yang X (2021) Blockchain-based supply chain finance design pattern. In: 2021 13th International conference on intelligent human-machine systems and cybernetics (IHMSC), pp 200\u2013203. https:\/\/doi.org\/10.1109\/IHMSC52134.2021.00053","DOI":"10.1109\/IHMSC52134.2021.00053"},{"key":"10646_CR93","doi-asserted-by":"crossref","unstructured":"Zecchini M, Bracciali A, Chatzigiannakis I, Vitaletti A (2019) On refining design patterns for smart contracts. In: European conference on parallel processing, Springer, pp 228\u2013239","DOI":"10.1007\/978-3-030-48340-1_18"},{"key":"10646_CR94","doi-asserted-by":"publisher","unstructured":"Zhang P, Schmidt DC, White J (2020) A pattern sequence for designing blockchain-based healthcare information technology systems. https:\/\/doi.org\/10.48550\/arXiv.2010.01172","DOI":"10.48550\/arXiv.2010.01172"},{"issue":"3","key":"10646_CR95","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3316481","volume":"52","author":"R Zhang","year":"2019","unstructured":"Zhang R, Xue R, Liu L (2019) Security and privacy on blockchain. ACM Comput Surv (CSUR) 52(3):1\u201334","journal-title":"ACM Comput Surv (CSUR)"},{"key":"10646_CR96","doi-asserted-by":"publisher","unstructured":"Zheng Z, Xie S, Dai HN, Chen W, Chen X, Weng J, Imran M (2020) An overview on smart contracts: Challenges, advances and platforms. Future Gener Comput Syst 105:475\u2013491. https:\/\/doi.org\/10.1016\/j.future.2019.12.019https:\/\/www.sciencedirect.com\/science\/article\/pii\/S0167739X19316280","DOI":"10.1016\/j.future.2019.12.019"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-025-10646-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-025-10646-w\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-025-10646-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,5]],"date-time":"2025-06-05T09:54:41Z","timestamp":1749117281000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-025-10646-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,4,8]]},"references-count":96,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2025,7]]}},"alternative-id":["10646"],"URL":"https:\/\/doi.org\/10.1007\/s10664-025-10646-w","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2025,4,8]]},"assertion":[{"value":"21 March 2025","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"8 April 2025","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no conflict of interest.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflicts of interests"}}],"article-number":"95"}}