A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique

The Ethereum blockchain is one of the main public platforms to run smart contracts and enable decentralised applications. Since data stored in a blockchain is considered immutable, smart contracts deployed in Ethereum are regarded as tamper-proof and therefore offer strong protection against attacks...

Full description

Bibliographic Details
Main Authors: Shaima AL Amri, Leonardo Aniello, Vladimiro Sassone
Format: Article
Language:English
Published: The British Blockchain Association 2023-03-01
Series:The Journal of The British Blockchain Association
Online Access:https://doi.org/10.31585/jbba-6-1-(3)2023
_version_ 1797867002141868032
author Shaima AL Amri
Leonardo Aniello
Vladimiro Sassone
author_facet Shaima AL Amri
Leonardo Aniello
Vladimiro Sassone
author_sort Shaima AL Amri
collection DOAJ
description The Ethereum blockchain is one of the main public platforms to run smart contracts and enable decentralised applications. Since data stored in a blockchain is considered immutable, smart contracts deployed in Ethereum are regarded as tamper-proof and therefore offer strong protection against attacks aiming at tinkering with the execution flow of an application. Yet, like any other software, a smart contract needs to be maintained over time to fix bugs or add new features. Deploying every updated version as a brand-new smart contract in Ethereum leads to problems such as migrating the contract state from the old version and enabling clients to point to the new version in a timely fashion. The OpenZeppelin framework addresses this limitation by providing libraries that enable the deployment of upgradeable smart contracts. This is achieved by relying on proxies that act as intermediaries between clients and smart contracts, allowing the latter to be updated transparently. In this paper, we present the upgradeable smart contract patterns supported by OpenZeppelin and compare them in terms of security, cost, and performance. To show this paradigm’s prevalence in Ethereum, we also analyse the usage of OpenZeppelin Upgradeable smart contracts over the last four years.
first_indexed 2024-04-09T23:34:27Z
format Article
id doaj.art-c4588f7f1f724784bc35d8f5b4752c07
institution Directory Open Access Journal
issn 2516-3949
2516-3957
language English
last_indexed 2024-04-09T23:34:27Z
publishDate 2023-03-01
publisher The British Blockchain Association
record_format Article
series The Journal of The British Blockchain Association
spelling doaj.art-c4588f7f1f724784bc35d8f5b4752c072023-03-20T20:12:49ZengThe British Blockchain AssociationThe Journal of The British Blockchain Association2516-39492516-39572023-03-01A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin TechniqueShaima AL AmriLeonardo AnielloVladimiro SassoneThe Ethereum blockchain is one of the main public platforms to run smart contracts and enable decentralised applications. Since data stored in a blockchain is considered immutable, smart contracts deployed in Ethereum are regarded as tamper-proof and therefore offer strong protection against attacks aiming at tinkering with the execution flow of an application. Yet, like any other software, a smart contract needs to be maintained over time to fix bugs or add new features. Deploying every updated version as a brand-new smart contract in Ethereum leads to problems such as migrating the contract state from the old version and enabling clients to point to the new version in a timely fashion. The OpenZeppelin framework addresses this limitation by providing libraries that enable the deployment of upgradeable smart contracts. This is achieved by relying on proxies that act as intermediaries between clients and smart contracts, allowing the latter to be updated transparently. In this paper, we present the upgradeable smart contract patterns supported by OpenZeppelin and compare them in terms of security, cost, and performance. To show this paradigm’s prevalence in Ethereum, we also analyse the usage of OpenZeppelin Upgradeable smart contracts over the last four years.https://doi.org/10.31585/jbba-6-1-(3)2023
spellingShingle Shaima AL Amri
Leonardo Aniello
Vladimiro Sassone
A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
The Journal of The British Blockchain Association
title A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
title_full A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
title_fullStr A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
title_full_unstemmed A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
title_short A Review of Upgradeable Smart Contract Patterns based on OpenZeppelin Technique
title_sort review of upgradeable smart contract patterns based on openzeppelin technique
url https://doi.org/10.31585/jbba-6-1-(3)2023
work_keys_str_mv AT shaimaalamri areviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique
AT leonardoaniello areviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique
AT vladimirosassone areviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique
AT shaimaalamri reviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique
AT leonardoaniello reviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique
AT vladimirosassone reviewofupgradeablesmartcontractpatternsbasedonopenzeppelintechnique