As applications based on Distributed Ledger Tech- nology (DLT) gain popularity, the wide range of vulnerabilities that have affected existing blockchains (most notably Ethereum and Solidity-based applications) has motivated renewed interest in the design of programming languages capable of providing more adequate abstractions for managing digital assets and their access control policies. These mechanisms are crucial to certify that applications are safe and secure before deploying them on the target blockchains. Venturing into this challenge, we focus on Move, currently one of the most promising programming languages for resources and digital assets management with the aim to investigate its effectiveness in the realm of general-purpose smart contract development, and the long-term goal to identify the design principles and language-based techniques for the safe and secure development of asset-based DLT applications. As a first step in that direction, in the present paper, we develop A LGO M OVE , a Move embedding on Algorand. In addition to providing new insight into the nature of digital assets, the embedding is noteworthy in its own right. It provides Algorand/TEAL developers with a friendly API that aligns with their familiar programming patterns, while at the same time leveraging Move’s mechanisms of static typing and security verification to offer certified, language-level protection against double spending and other resource-related pitfalls commonly encountered in DLT applications
ALGOMOVE – A Move Embedding for Algorand
michele bugliesi;silvia crafa;
2023
Abstract
As applications based on Distributed Ledger Tech- nology (DLT) gain popularity, the wide range of vulnerabilities that have affected existing blockchains (most notably Ethereum and Solidity-based applications) has motivated renewed interest in the design of programming languages capable of providing more adequate abstractions for managing digital assets and their access control policies. These mechanisms are crucial to certify that applications are safe and secure before deploying them on the target blockchains. Venturing into this challenge, we focus on Move, currently one of the most promising programming languages for resources and digital assets management with the aim to investigate its effectiveness in the realm of general-purpose smart contract development, and the long-term goal to identify the design principles and language-based techniques for the safe and secure development of asset-based DLT applications. As a first step in that direction, in the present paper, we develop A LGO M OVE , a Move embedding on Algorand. In addition to providing new insight into the nature of digital assets, the embedding is noteworthy in its own right. It provides Algorand/TEAL developers with a friendly API that aligns with their familiar programming patterns, while at the same time leveraging Move’s mechanisms of static typing and security verification to offer certified, language-level protection against double spending and other resource-related pitfalls commonly encountered in DLT applicationsFile | Dimensione | Formato | |
---|---|---|---|
Algomove.pdf
non disponibili
Tipologia:
Published (publisher's version)
Licenza:
Accesso privato - non pubblico
Dimensione
105.41 kB
Formato
Adobe PDF
|
105.41 kB | Adobe PDF | Visualizza/Apri Richiedi una copia |
Pubblicazioni consigliate
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.