{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,9]],"date-time":"2026-10-09T10:07:33Z","timestamp":1791540453034,"version":"4.3.4"},"reference-count":58,"publisher":"MDPI AG","issue":"2","license":[{"start":{"date-parts":[[2020,2,11]],"date-time":"2020-02-11T00:00:00Z","timestamp":1581379200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Entropy"],"abstract":"<jats:p>Smart contracts have gained a lot of popularity in recent times as they are a very powerful tool for the development of decentralised and automatic applications in many fields without the need for intermediaries or trusted third parties. However, due to the decentralised nature of the blockchain on which they are based, a series of challenges have emerged related to vulnerabilities in their programming that, given their particularities, could have (and have already had) a very high economic impact. This article provides a holistic view of security challenges associated with smart contracts, as well as the state of the art of available public domain tools.<\/jats:p>","DOI":"10.3390\/e22020203","type":"journal-article","created":{"date-parts":[[2020,2,11]],"date-time":"2020-02-11T09:25:21Z","timestamp":1581413121000},"page":"203","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":34,"title":["An Analysis of Smart Contracts Security Threats Alongside Existing Solutions"],"prefix":"10.3390","volume":"22","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5125-1713","authenticated-orcid":false,"given":"Antonio","family":"L\u00f3pez Vivar","sequence":"first","affiliation":[{"name":"Group of Analysis, Security and Systems (GASS), Department of Software Engineering and Artificial Intelligence (DISIA), Faculty of Computer Science and Engineering, Office 431, Universidad Complutense de Madrid (UCM), Calle Profesor Jos\u00e9 Garc\u00eda Santesmases, 9, Ciudad Universitaria, 28040 Madrid, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5779-9173","authenticated-orcid":false,"given":"Alberto Tur\u00e9gano","family":"Castedo","sequence":"additional","affiliation":[{"name":"Group of Analysis, Security and Systems (GASS), Department of Software Engineering and Artificial Intelligence (DISIA), Faculty of Computer Science and Engineering, Office 431, Universidad Complutense de Madrid (UCM), Calle Profesor Jos\u00e9 Garc\u00eda Santesmases, 9, Ciudad Universitaria, 28040 Madrid, Spain"},{"name":"Raona Enginyers S.L. Calle de Goya, 115, 2n, 28009 Madrid, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2846-9017","authenticated-orcid":false,"given":"Ana Lucila","family":"Sandoval Orozco","sequence":"additional","affiliation":[{"name":"Group of Analysis, Security and Systems (GASS), Department of Software Engineering and Artificial Intelligence (DISIA), Faculty of Computer Science and Engineering, Office 431, Universidad Complutense de Madrid (UCM), Calle Profesor Jos\u00e9 Garc\u00eda Santesmases, 9, Ciudad Universitaria, 28040 Madrid, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7573-6272","authenticated-orcid":false,"given":"Luis Javier","family":"Garc\u00eda Villalba","sequence":"additional","affiliation":[{"name":"Group of Analysis, Security and Systems (GASS), Department of Software Engineering and Artificial Intelligence (DISIA), Faculty of Computer Science and Engineering, Office 431, Universidad Complutense de Madrid (UCM), Calle Profesor Jos\u00e9 Garc\u00eda Santesmases, 9, Ciudad Universitaria, 28040 Madrid, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"1968","published-online":{"date-parts":[[2020,2,11]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","first-page":"9","DOI":"10.5210\/fm.v2i9.548","article-title":"Formalizing and securing relationships on public networks","volume":"2","author":"Szabo","year":"1997","journal-title":"First Monday"},{"key":"ref_2","unstructured":"Nakamoto, S. (2020, February 07). Bitcoin: A Peer-to-Peer Electronic Cash System. Available online: https:\/\/git.dhimmel.com\/bitcoin-whitepaper\/."},{"key":"ref_3","doi-asserted-by":"crossref","unstructured":"Al-Bassam, M. (2017). SCPKI: A smart contract-based PKI and identity system. Proceedings of the ACM Workshop on Blockchain, Cryptocurrencies and Contracts, ACM.","DOI":"10.1145\/3055518.3055530"},{"key":"ref_4","doi-asserted-by":"crossref","first-page":"20","DOI":"10.1109\/MSP.2018.3111247","article-title":"A first look at identity management schemes on the blockchain","volume":"16","author":"Dunphy","year":"2018","journal-title":"IEEE Secur. Privacy"},{"key":"ref_5","doi-asserted-by":"crossref","unstructured":"McCorry, P., Shahandashti, S.F., and Hao, F. (2017). A smart contract for boardroom voting with maximum voter privacy. International Conference on Financial Cryptography and Data Security, Springer.","DOI":"10.1007\/978-3-319-70972-7_20"},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"95","DOI":"10.1109\/MS.2018.2801546","article-title":"Blockchain-enabled e-voting","volume":"35","author":"Kshetri","year":"2018","journal-title":"IEEE Softw."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Peters, G.W., and Panayi, E. (2016). Understanding modern banking ledgers through blockchain technologies: Future of transaction processing and smart contracts on the internet of money. Banking Beyond Banks and Money, Springer.","DOI":"10.2139\/ssrn.2692487"},{"key":"ref_8","doi-asserted-by":"crossref","unstructured":"Bocek, T., Rodrigues, B.B., Strasser, T., and Stiller, B. (2017, January 8\u201312). Blockchains everywhere-a use-case of blockchains in the pharma supply-chain. Proceedings of the 2017 IFIP\/IEEE Symposium on Integrated Network and Service Management (IM), Lisbon, Portugal.","DOI":"10.23919\/INM.2017.7987376"},{"key":"ref_9","doi-asserted-by":"crossref","first-page":"2292","DOI":"10.1109\/ACCESS.2016.2566339","article-title":"Blockchains and smart contracts for the internet of things","volume":"4","author":"Christidis","year":"2016","journal-title":"IEEE Access"},{"key":"ref_10","doi-asserted-by":"crossref","unstructured":"Yuen, H.Y., Wu, F., Cai, W., Chan, H.C., Yan, Q., and Leung, V. Proof-of-play: A novel consensus model for blockchain-based peer-to-peer gaming system. Proceedings of the 2019 ACM International Symposium on Blockchain and Secure Critical Infrastructure.","DOI":"10.1145\/3327960.3332386"},{"key":"ref_11","unstructured":"Bisti, J., Bertsche, R., Judka, D., and Siconolfi, P. (2019). Game Data Offloading to a Blockchain. (Application No. 15\/826,412), U.S. Patent."},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Rifi, N., Rachkidi, E., Agoulmine, N., and Taher, N.C. (2017, January 19\u201321). Towards using blockchain technology for eHealth data access management. Proceedings of the 2017 Fourth International Conference on Advances in Biomedical Engineering (ICABME), Beirut, Lebanon.","DOI":"10.1109\/ICABME.2017.8167555"},{"key":"ref_13","first-page":"37","article-title":"A next-generation smart contract and decentralized application platform","volume":"3","author":"Buterin","year":"2014","journal-title":"White Paper"},{"key":"ref_14","unstructured":"Cachin, C. (2020, February 07). Architecture of the Hyperledger Blockchain Fabric. Workshop on Distributed Cryptocurrencies and Consensus Ledgers. Available online: https:\/\/pdfs.semanticscholar.org\/f852\/c5f3fe649f8a17ded391df0796677a59927f.pdf."},{"key":"ref_15","first-page":"15","article-title":"Corda: An introduction","volume":"1","author":"Brown","year":"2016","journal-title":"R3 CEV August"},{"key":"ref_16","unstructured":"Coinlore (2020, February 07). Smart Contract Platforms. Available online: https:\/\/www.coinlore.com\/es\/smart-contract-platforms."},{"key":"ref_17","doi-asserted-by":"crossref","unstructured":"El Ioini, N., and Pahl, C. (2018). A review of distributed ledger technologies. OTM Confederated International Conferences On the Move to Meaningful Internet Systems, Springer.","DOI":"10.1007\/978-3-030-02671-4_16"},{"key":"ref_18","doi-asserted-by":"crossref","unstructured":"Gervais, A., Karame, G.O., W\u00fcst, K., Glykantzis, V., Ritzdorf, H., and Capkun, S. (2016). On the security and performance of proof of work blockchains. Proceedings of the 2016 ACM SIGSAC Conference on Computer And Communications Security, ACM.","DOI":"10.1145\/2976749.2978341"},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Bertoni, G., Daemen, J., Peeters, M., and Van Assche, G. (2013). Keccak. Annual International Conference on the Theory and Applications Of Cryptographic Techniques, Springer.","DOI":"10.1007\/978-3-642-38348-9_19"},{"key":"ref_20","doi-asserted-by":"crossref","unstructured":"Dannen, C. (2017). Introducing Ethereum and Solidity, Springer.","DOI":"10.1007\/978-1-4842-2535-6"},{"key":"ref_21","doi-asserted-by":"crossref","unstructured":"Atzei, N., Bartoletti, M., and Cimoli, T. (2017). A survey of attacks on ethereum smart contracts (sok). International Conference on Principles of Security and Trust, Springer.","DOI":"10.1007\/978-3-662-54455-6_8"},{"key":"ref_22","doi-asserted-by":"crossref","first-page":"19","DOI":"10.4018\/JCIT.2019010102","article-title":"Understanding a revolutionary and flawed grand experiment in blockchain: the DAO attack","volume":"21","author":"Mehar","year":"2019","journal-title":"J. Cases Inf. Technol. (JCIT)"},{"key":"ref_23","unstructured":"Palladino, S. (2020, February 07). The Parity Wallet Hack Explained. Available online: https:\/\/blog.zeppelin.solutions\/on-the-parity-wallet-multisig-hack-405a8c12e8f7."},{"key":"ref_24","doi-asserted-by":"crossref","unstructured":"Luu, L., Chu, D.H., Olickel, H., Saxena, P., and Hobor, A. (2016). Making smart contracts smarter. Proceedings of the 2016 ACM SIGSAC Conference on Computer And Communications Security, ACM.","DOI":"10.1145\/2976749.2978309"},{"key":"ref_25","unstructured":"Melon Project (2020, February 07). Oyente. Available online: https:\/\/github.com\/melonproject\/oyente."},{"key":"ref_26","unstructured":"Go Ethereum (2020, February 07). Go-Ethereum. Available online: https:\/\/geth.ethereum.org."},{"key":"ref_27","unstructured":"Ethereum Foundation (2020, February 07). Remix-IDE. Available online: https:\/\/github.com\/ethereum\/remix-ide."},{"key":"ref_28","unstructured":"Revere, R. (2020, February 07). Solgraph. Available online: https:\/\/github.com\/raineorshine\/solgraph."},{"key":"ref_29","doi-asserted-by":"crossref","first-page":"116","DOI":"10.1145\/3276486","article-title":"Madmax: Surviving out-of-gas conditions in ethereum smart contracts","volume":"2","author":"Grech","year":"2018","journal-title":"Proc. ACM Program. Lang."},{"key":"ref_30","doi-asserted-by":"crossref","unstructured":"Mossberg, M., Manzano, F., Hennenfent, E., Groce, A., Grieco, G., Feist, J., Brunson, T., and Dinaburg, A. (2019). Manticore: A User-Friendly Symbolic Execution Framework for Binaries and Smart Contracts. arXiv.","DOI":"10.1109\/ASE.2019.00133"},{"key":"ref_31","doi-asserted-by":"crossref","unstructured":"De Moura, L., and Bj\u00f8rner, N. (2008). Z3: An efficient SMT solver. International Conference on Tools and Algorithms for The Construction and Analysis of Systems, Springer.","DOI":"10.1007\/978-3-540-78800-3_24"},{"key":"ref_32","unstructured":"Of Bits, T. (2020, February 07). Manticore. Available online: https:\/\/github.com\/trailofbits\/manticore."},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Tikhomirov, S., Voskresenskaya, E., Ivanitskiy, I., Takhaviev, R., Marchenko, E., and Alexandrov, Y. (2018, January 27). Smartcheck: Static analysis of ethereum smart contracts. Proceedings of the 2018 IEEE\/ACM 1st International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB), New York, NY, USA.","DOI":"10.1145\/3194113.3194115"},{"key":"ref_34","unstructured":"SmartDec (2020, February 07). SmartCheck. Available online: https:\/\/github.com\/smartdec\/smartcheck."},{"key":"ref_35","unstructured":"Mueller, B. (2018, January 9\u201313). Smashing smart contracts. Proceedings of the 9th HITB Security Conference, Amsterdam, The Netherlands."},{"key":"ref_36","unstructured":"ConsenSys (2020, February 07). Mythril. Available online: https:\/\/github.com\/ConsenSys\/mythril-classic."},{"key":"ref_37","doi-asserted-by":"crossref","unstructured":"Albert, E., Gordillo, P., Livshits, B., Rubio, A., and Sergey, I. (2018). Ethir: A framework for high-level analysis of ethereum bytecode. International Symposium on Automated Technology for Verification and Analysis, Springer.","DOI":"10.1007\/978-3-030-01090-4_30"},{"key":"ref_38","unstructured":"Pace, G. (2020, February 07). contractLarva. Available online: https:\/\/github.com\/gordonpace\/contractLarva."},{"key":"ref_39","doi-asserted-by":"crossref","unstructured":"Hegedus, P. (2019). Towards analyzing the complexity landscape of solidity based ethereum smart contracts. Technologies, 7.","DOI":"10.3390\/technologies7010006"},{"key":"ref_40","unstructured":"Hegedus, P. (2020, February 07). SolMet. Available online: https:\/\/github.com\/chicxurug\/SolMet-Solidity-parser."},{"key":"ref_41","unstructured":"Brent, L., Jurisevic, A., Kong, M., Liu, E., Gauthier, F., Gramoli, V., Holz, R., and Scholz, B. (2018). Vandal: A scalable security analysis framework for smart contracts. arXiv."},{"key":"ref_42","doi-asserted-by":"crossref","unstructured":"Jordan, H., Scholz, B., and Suboti\u0107, P. (2016). Souffl\u00e9: On synthesis of program analyzers. International Conference on Computer Aided Verification, Springer.","DOI":"10.1007\/978-3-319-41540-6_23"},{"key":"ref_43","unstructured":"Smart Contract Research (USYD) (2020, February 07). Vandal. Available online: https:\/\/github.com\/usyd-blockchain\/vandal."},{"key":"ref_44","unstructured":"Gordillo, P. (2020, February 07). EthIR. Available online: https:\/\/github.com\/costa-group\/EthIR."},{"key":"ref_45","doi-asserted-by":"crossref","unstructured":"Nikoli\u0107, I., Kolluri, A., Sergey, I., Saxena, P., and Hobor, A. (2018). Finding the greedy, prodigal, and suicidal contracts at scale. Proceedings of the 34th Annual Computer Security Applications Conference, ACM.","DOI":"10.1145\/3274694.3274743"},{"key":"ref_46","unstructured":"MAIAN-Tool (2020, February 07). MAIAN. Available online: https:\/\/github.com\/MAIAN-tool\/MAIAN."},{"key":"ref_47","unstructured":"(2018, January 15\u201317). Erays: reverse engineering ethereum\u2019s opaque smart contracts. Proceedings of the 27th USENIX Security Symposium, Berkeley, CA, USA."},{"key":"ref_48","unstructured":"(2020, February 07). Teamnsrg. Available online: https:\/\/github.com\/teamnsrg\/erays."},{"key":"ref_49","unstructured":"Stortz, R. (2020, February 07). Rattle\u2014An Ethereum EVM Binary Analysis Framework. Available online: https:\/\/github.com\/crytic\/rattle."},{"key":"ref_50","unstructured":"Trail of Bits (2020, February 07). Rattle. Available online: https:\/\/github.com\/trailofbits\/rattle."},{"key":"ref_51","doi-asserted-by":"crossref","unstructured":"Torres, C.F., Sch\u00fctte, J., and State, R. (2018). Osiris: Hunting for integer bugs in ethereum smart contracts. Proceedings of the 34th Annual Computer Security Applications Conference, ACM.","DOI":"10.1145\/3274694.3274737"},{"key":"ref_52","unstructured":"Ferreira, C. (2020, February 07). Osiris. Available online: https:\/\/github.com\/christoftorres\/Osiris."},{"key":"ref_53","doi-asserted-by":"crossref","unstructured":"Tsankov, P., Dan, A., Drachsler-Cohen, D., Gervais, A., Buenzli, F., and Vechev, M. (2018). Securify: Practical security analysis of smart contracts. Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, ACM.","DOI":"10.1145\/3243734.3243780"},{"key":"ref_54","unstructured":"SRI Lab (2020, February 07). Securify. Available online: https:\/\/github.com\/eth-sri\/securify."},{"key":"ref_55","doi-asserted-by":"crossref","unstructured":"Feist, J., Grieco, G., and Groce, A. (2019, January 27). Slither: A static analysis framework for smart contracts. Proceedings of the 2019 IEEE\/ACM 2nd International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB), Montreal, QC, Canada.","DOI":"10.1109\/WETSEB.2019.00008"},{"key":"ref_56","unstructured":"Crytic (2020, February 07). Slither. Available online: https:\/\/github.com\/crytic\/slither."},{"key":"ref_57","unstructured":"Grishchenko, I., Maffei, M., and Schneidewind, C. (2018). EtherTrust: Sound Static Analysis of Ethereum Bytecode. Tech. Univ. Wien Tech. Rep., Available online: https:\/\/www.netidee.at\/sites\/default\/files\/2018-07\/staticanalysis.pdf."},{"key":"ref_58","unstructured":"SecPriv (2020, February 07). EtherTrust. Available online: https:\/\/github.com\/SecPriv\/EtherTrust."}],"container-title":["Entropy"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1099-4300\/22\/2\/203\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T08:56:46Z","timestamp":1760173006000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1099-4300\/22\/2\/203"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,2,11]]},"references-count":58,"journal-issue":{"issue":"2","published-online":{"date-parts":[[2020,2]]}},"alternative-id":["e22020203"],"URL":"https:\/\/doi.org\/10.3390\/e22020203","relation":{},"ISSN":["1099-4300"],"issn-type":[{"value":"1099-4300","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020,2,11]]}}}