DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts

The growing importance of Decentralized Applications (dApps) in areas such as the Internet of Things (IoT), Cybersecurity, and Finance is playing a crucial role in advancing software maintenance, security, and data sharing. Understanding the complex architecture and components of dApps is essential...

Full description

Bibliographic Details
Published in:2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C)
Main Authors: Ibba, G, Destefanis, G, Neykova, R, Ortu, M, Aufiero, S, Bartolucci, S
Format: Conference Object
Language:English
Published: Institute of Electrical and Electronics Engineers (IEEE) 2024
Subjects:
Online Access:https://bura.brunel.ac.uk/handle/2438/29889
https://doi.org/10.1109/SANER-C62648.2024.00015
_version_ 1828674329147080704
author Ibba, G
Destefanis, G
Neykova, R
Ortu, M
Aufiero, S
Bartolucci, S
author_facet Ibba, G
Destefanis, G
Neykova, R
Ortu, M
Aufiero, S
Bartolucci, S
author_sort Ibba, G
collection Brunel University London: Brunel University Research Archive (BURA)
container_start_page 72
container_title 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C)
description The growing importance of Decentralized Applications (dApps) in areas such as the Internet of Things (IoT), Cybersecurity, and Finance is playing a crucial role in advancing software maintenance, security, and data sharing. Understanding the complex architecture and components of dApps is essential to harness their full benefits. This often involves the challenging task of identifying and retrieving key components during the dApp compilation process, particularly when dealing with multiple external dependencies. A case in point is the variety of versions in the OpenZeppelin libraries, where finding compatible elements can be a laborious process. In response to this challenge, we introduce DAI (Dependency Analyser and Installer), a novel tool that automates the identification of compatible external dependency versions for specific smart contracts. This tool significantly simplifies the compilation process for dApps that incorporate external modules, making it more efficient for developers and researchers. We evaluated DAI on 57 real-world dApps, achieving success in determining the right dependency match for 50 cases. However, the inability to compile the remaining 7 dApps due to missing files and artifacts highlights the ongoing complexities in dApp development. S.B., G.D., R.N. and M.O. acknowledge support from the Ethereum foundation grant FY23-1048.
format Conference Object
genre Rovaniemi
genre_facet Rovaniemi
geographic Rovaniemi
geographic_facet Rovaniemi
id ftbruneluniv:oai:bura.brunel.ac.uk:2438/29889
institution Open Polar
language English
long_lat ENVELOPE(26.159,26.159,66.392,66.392)
op_collection_id ftbruneluniv
op_container_end_page 75
op_coverage Rovaniemi, Finland
op_doi https://doi.org/10.1109/SANER-C62648.2024.00015
op_relation Proceedings - 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C)
https://bura.brunel.ac.uk/handle/2438/29889
op_rights Copyright © 2024 Institute of Electrical and Electronics Engineers (IEEE). Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works ( https://journals.ieeeauthorcenter.ieee.org/become-an-ieee-journal-author/publishing-ethics/guidelines-and-policies/post-publication-policies/ ).
https://journals.ieeeauthorcenter.ieee.org/become-an-ieee-journal-author/publishing-ethics/guidelines-and-policies/post-publication-policies/
Institute of Electrical and Electronics Engineers (IEEE)
op_source 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C)
publishDate 2024
publisher Institute of Electrical and Electronics Engineers (IEEE)
record_format openpolar
spelling ftbruneluniv:oai:bura.brunel.ac.uk:2438/29889 2025-04-06T15:04:13+00:00 DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts Ibba, G Destefanis, G Neykova, R Ortu, M Aufiero, S Bartolucci, S Rovaniemi, Finland 2024-03-12 72 - 75 Print-Electornic https://bura.brunel.ac.uk/handle/2438/29889 https://doi.org/10.1109/SANER-C62648.2024.00015 English en_US eng Institute of Electrical and Electronics Engineers (IEEE) Proceedings - 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C) https://bura.brunel.ac.uk/handle/2438/29889 Copyright © 2024 Institute of Electrical and Electronics Engineers (IEEE). Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works ( https://journals.ieeeauthorcenter.ieee.org/become-an-ieee-journal-author/publishing-ethics/guidelines-and-policies/post-publication-policies/ ). https://journals.ieeeauthorcenter.ieee.org/become-an-ieee-journal-author/publishing-ethics/guidelines-and-policies/post-publication-policies/ Institute of Electrical and Electronics Engineers (IEEE) 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C) blockchain smart contracts decentralized applications software engineering Conference Paper 2024 ftbruneluniv https://doi.org/10.1109/SANER-C62648.2024.00015 2025-03-13T04:36:15Z The growing importance of Decentralized Applications (dApps) in areas such as the Internet of Things (IoT), Cybersecurity, and Finance is playing a crucial role in advancing software maintenance, security, and data sharing. Understanding the complex architecture and components of dApps is essential to harness their full benefits. This often involves the challenging task of identifying and retrieving key components during the dApp compilation process, particularly when dealing with multiple external dependencies. A case in point is the variety of versions in the OpenZeppelin libraries, where finding compatible elements can be a laborious process. In response to this challenge, we introduce DAI (Dependency Analyser and Installer), a novel tool that automates the identification of compatible external dependency versions for specific smart contracts. This tool significantly simplifies the compilation process for dApps that incorporate external modules, making it more efficient for developers and researchers. We evaluated DAI on 57 real-world dApps, achieving success in determining the right dependency match for 50 cases. However, the inability to compile the remaining 7 dApps due to missing files and artifacts highlights the ongoing complexities in dApp development. S.B., G.D., R.N. and M.O. acknowledge support from the Ethereum foundation grant FY23-1048. Conference Object Rovaniemi Brunel University London: Brunel University Research Archive (BURA) Rovaniemi ENVELOPE(26.159,26.159,66.392,66.392) 2024 IEEE International Conference on Software Analysis, Evolution and Reengineering - Companion (SANER-C) 72 75
spellingShingle blockchain
smart contracts
decentralized applications
software engineering
Ibba, G
Destefanis, G
Neykova, R
Ortu, M
Aufiero, S
Bartolucci, S
DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title_full DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title_fullStr DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title_full_unstemmed DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title_short DAI: A Dependencies Analyzer and Installer For Solidity Smart Contracts
title_sort dai: a dependencies analyzer and installer for solidity smart contracts
topic blockchain
smart contracts
decentralized applications
software engineering
topic_facet blockchain
smart contracts
decentralized applications
software engineering
url https://bura.brunel.ac.uk/handle/2438/29889
https://doi.org/10.1109/SANER-C62648.2024.00015