Capitalisation boursière: $3.5157T 2.18%
Volume(24h): $145.4427B 4.07%
Indice de peur et de cupidité:

24 - Peur extrême

  • Capitalisation boursière: $3.5157T 2.18%
  • Volume(24h): $145.4427B 4.07%
  • Indice de peur et de cupidité:
  • Capitalisation boursière: $3.5157T 2.18%
Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos
Top Cryptospedia

Choisir la langue

Choisir la langue

Sélectionnez la devise

Cryptos
Les sujets
Cryptospedia
Nouvelles
Cryptosopique
Vidéos

Comment les contrats intelligents peuvent-ils être mis à jour si la blockchain est immuable ?

Smart contracts can be upgraded without breaking blockchain immutability by using proxy patterns that redirect logic to new implementations while preserving data and address.

Nov 09, 2025 at 09:20 pm

Comprendre le paradoxe des blockchains immuables et des mises à jour des contrats intelligents

1. La technologie Blockchain repose sur le principe d’immuabilité, ce qui signifie qu’une fois les données écrites dans la blockchain, elles ne peuvent pas être modifiées ou supprimées. Cette caractéristique garantit la transparence, la sécurité et la confiance dans les systèmes décentralisés. Cependant, les contrats intelligents (programmes auto-exécutables fonctionnant sur des blockchains) sont souvent censés évoluer à mesure que des bogues sont découverts ou que des fonctionnalités doivent être améliorées. La contradiction entre l'immuabilité et le besoin de mises à jour présente un défi unique.

2. Les développeurs ont conçu des modèles architecturaux et des mécanismes pour permettre la mise à niveau de la logique des contrats intelligents sans violer l'intégrité de la blockchain. Ces méthodes ne modifient pas le code d'origine mais redirigent l'exécution vers de nouvelles implémentations tout en préservant l'état et l'adresse du contrat.

3. Une approche courante consiste à utiliser des modèles de proxy, dans lesquels un contrat de proxy détient l'état et agit comme une interface, tandis que la logique réelle réside dans un contrat de mise en œuvre distinct et évolutif. En modifiant la référence à l'implémentation, les développeurs peuvent mettre à jour efficacement les fonctionnalités.

4. Une autre stratégie est la migration de contrat, dans laquelle une nouvelle version d'un contrat intelligent est déployée et les utilisateurs sont invités ou incités à déplacer leurs actifs et leurs interactions vers le contrat mis à jour. Cette méthode maintient l’immuabilité en laissant l’ancien contrat intact tout en déplaçant l’activité vers un nouveau.

5. Certaines plateformes blockchain, comme Ethereum, prennent en charge des normes comme ERC-1967, qui définissent des moyens sécurisés de mettre en œuvre des contrats évolutifs. Ces normes contribuent à garantir que les mises à niveau sont transparentes et vérifiables, réduisant ainsi les risques associés aux modifications malveillantes.

Modèles de proxy : le mécanisme de base derrière les contrats évolutifs

1. La solution la plus largement adoptée pour mettre à jour les contrats intelligents est le modèle proxy. Dans cette configuration, deux contrats sont impliqués : un contrat de procuration et un contrat de mise en œuvre. Le proxy stocke toutes les données critiques et transmet les appels de fonction à l'implémentation via déléguécall.

2. Lorsqu'une mise à jour est nécessaire, les développeurs déploient un nouveau contrat d'implémentation et mettent à jour le pointeur dans le proxy pour référencer la nouvelle adresse. Cela permet de changer la logique tout en gardant la même adresse contractuelle et les mêmes données stockées.

3. Il existe plusieurs variantes du modèle de proxy, notamment le proxy transparent, l'UUPS (Universal Upgradeable Proxy Standard) et le modèle Diamond. Chacun offre des compromis différents en termes de coût du gaz, de contrôle et de complexité.

4. Dans un proxy transparent, une adresse d'administrateur désignée dispose des droits exclusifs pour mettre à niveau l'implémentation, tandis que les utilisateurs réguliers interagissent avec le contrat sans remarquer de différence. Cette séparation permet d'éviter les mises à niveau non autorisées.

5. UUPS déplace la logique de mise à niveau dans l'implémentation elle-même, réduisant ainsi la taille et le coût du proxy. Toutefois, cela nécessite un audit minutieux, car une vulnérabilité dans la mise en œuvre pourrait permettre à des attaquants de détourner le mécanisme de mise à niveau.

Risques et considérations liés aux contrats intelligents évolutifs

1. Si l’évolutivité introduit de la flexibilité, elle introduit également des risques de centralisation. Si une seule entité contrôle la clé de mise à niveau, elle acquiert un pouvoir important sur le comportement du contrat, ce qui pourrait nuire à la décentralisation.

2. Les mises à niveau malveillantes peuvent entraîner un vol, un gel des fonds ou des modifications inattendues des fonctionnalités. Des incidents très médiatisés se sont produits au cours desquels des mécanismes de mise à niveau mal sécurisés ont été exploités, entraînant des pertes financières substantielles.

3. La transparence est cruciale. Les utilisateurs doivent être en mesure de vérifier les modifications apportées lors d'une mise à niveau. Le code open source, les annonces en chaîne et la gouvernance communautaire peuvent aider à maintenir la confiance.

4. Certains projets utilisent des portefeuilles multi-signatures ou des organisations autonomes décentralisées (DAO) pour gérer les mises à niveau, nécessitant un consensus avant l'application de tout changement. Cela répartit le contrôle et s’aligne sur les principes décentralisés.

5. Malgré les mesures de protection, la présence d'un mécanisme de mise à niveau rend intrinsèquement un contrat plus complexe et augmente sa surface d'attaque. Les audits, les vérifications formelles et les mises à niveau limitées dans le temps sont des pratiques recommandées pour atténuer ces risques.

Foire aux questions

Tout le monde peut-il mettre à niveau un contrat intelligent ? Non, seules les entités ayant accès à la clé de mise à niveau ou ayant une autorisation via un système de gouvernance peuvent lancer une mise à niveau. La plupart des systèmes limitent cette capacité à prévenir les abus.

Les contrats évolutifs brisent-ils l’immuabilité de la blockchain ? Ils ne modifient pas le code existant. Au lieu de cela, ils redirigent l’exécution vers le nouveau code. Le contrat original reste inchangé sur la blockchain, préservant l’immuabilité au niveau des données.

Qu'arrive-t-il aux fonds des utilisateurs lors d'une mise à niveau de contrat ? Les fonds et les données des utilisateurs sont généralement stockés dans le contrat proxy, qui reste actif. Tant que la disposition du stockage est compatible, les fonds restent en sécurité et accessibles après la mise à niveau.

Existe-t-il des blockchains qui prennent en charge nativement les mises à niveau des contrats ? Oui, certaines plates-formes comme EOS et Tezos offrent une prise en charge native des contrats intelligents évolutifs, permettant aux développeurs de créer des mécanismes de mise à jour directement dans la couche de protocole.

Clause de non-responsabilité:info@kdj.com

Les informations fournies ne constituent pas des conseils commerciaux. kdj.com n’assume aucune responsabilité pour les investissements effectués sur la base des informations fournies dans cet article. Les crypto-monnaies sont très volatiles et il est fortement recommandé d’investir avec prudence après une recherche approfondie!

Si vous pensez que le contenu utilisé sur ce site Web porte atteinte à vos droits d’auteur, veuillez nous contacter immédiatement (info@kdj.com) et nous le supprimerons dans les plus brefs délais.

Connaissances connexes

Que sont les intentions en cryptographie et comment modifient-elles l’interaction de l’utilisateur ?

Que sont les intentions en cryptographie et comment modifient-elles l’interaction de l’utilisateur ?

Nov 09,2025 at 09:00am

Comprendre le rôle des échanges décentralisés dans le trading crypto moderne 1. Les bourses décentralisées, communément appelées DEX, ont remodelé la ...

Qu’est-ce que la restauration et comment renforce-t-elle la sécurité économique ?

Qu’est-ce que la restauration et comment renforce-t-elle la sécurité économique ?

Nov 09,2025 at 11:40pm

Comprendre le resttaking dans l'écosystème blockchain 1. La restauration fait référence au processus par lequel les utilisateurs qui ont déjà mis ...

Qu’est-ce qu’un rollup souverain et en quoi diffère-t-il d’un rollup de contrat intelligent ?

Qu’est-ce qu’un rollup souverain et en quoi diffère-t-il d’un rollup de contrat intelligent ?

Nov 10,2025 at 09:00am

Comprendre les cumuls souverains 1. Un rollup souverain fonctionne comme une couche blockchain indépendante qui exploite la disponibilité des données ...

Qu'est-ce qu'un nom occasionnel cryptographique et comment est-il utilisé pour empêcher les attaques par relecture ?

Qu'est-ce qu'un nom occasionnel cryptographique et comment est-il utilisé pour empêcher les attaques par relecture ?

Nov 08,2025 at 05:00pm

Comprendre les noms occasionnels cryptographiques dans les systèmes Blockchain 1. Un nom occasionnel cryptographique est un numéro utilisé une seule f...

Quels sont les compromis entre vivacité et sécurité dans un protocole consensuel ?

Quels sont les compromis entre vivacité et sécurité dans un protocole consensuel ?

Nov 09,2025 at 12:20pm

Comprendre le rôle des pools de liquidités dans la finance décentralisée 1. Les pools de liquidités sont des éléments fondamentaux des bourses décentr...

Qu’est-ce qu’une donnée d’appel dans une transaction Ethereum et comment sont-elles utilisées ?

Qu’est-ce qu’une donnée d’appel dans une transaction Ethereum et comment sont-elles utilisées ?

Nov 09,2025 at 01:59am

Comprendre les données d'appel dans les transactions Ethereum 1. Les données d'appel font référence aux informations envoyées avec une transac...

Que sont les intentions en cryptographie et comment modifient-elles l’interaction de l’utilisateur ?

Que sont les intentions en cryptographie et comment modifient-elles l’interaction de l’utilisateur ?

Nov 09,2025 at 09:00am

Comprendre le rôle des échanges décentralisés dans le trading crypto moderne 1. Les bourses décentralisées, communément appelées DEX, ont remodelé la ...

Qu’est-ce que la restauration et comment renforce-t-elle la sécurité économique ?

Qu’est-ce que la restauration et comment renforce-t-elle la sécurité économique ?

Nov 09,2025 at 11:40pm

Comprendre le resttaking dans l'écosystème blockchain 1. La restauration fait référence au processus par lequel les utilisateurs qui ont déjà mis ...

Qu’est-ce qu’un rollup souverain et en quoi diffère-t-il d’un rollup de contrat intelligent ?

Qu’est-ce qu’un rollup souverain et en quoi diffère-t-il d’un rollup de contrat intelligent ?

Nov 10,2025 at 09:00am

Comprendre les cumuls souverains 1. Un rollup souverain fonctionne comme une couche blockchain indépendante qui exploite la disponibilité des données ...

Qu'est-ce qu'un nom occasionnel cryptographique et comment est-il utilisé pour empêcher les attaques par relecture ?

Qu'est-ce qu'un nom occasionnel cryptographique et comment est-il utilisé pour empêcher les attaques par relecture ?

Nov 08,2025 at 05:00pm

Comprendre les noms occasionnels cryptographiques dans les systèmes Blockchain 1. Un nom occasionnel cryptographique est un numéro utilisé une seule f...

Quels sont les compromis entre vivacité et sécurité dans un protocole consensuel ?

Quels sont les compromis entre vivacité et sécurité dans un protocole consensuel ?

Nov 09,2025 at 12:20pm

Comprendre le rôle des pools de liquidités dans la finance décentralisée 1. Les pools de liquidités sont des éléments fondamentaux des bourses décentr...

Qu’est-ce qu’une donnée d’appel dans une transaction Ethereum et comment sont-elles utilisées ?

Qu’est-ce qu’une donnée d’appel dans une transaction Ethereum et comment sont-elles utilisées ?

Nov 09,2025 at 01:59am

Comprendre les données d'appel dans les transactions Ethereum 1. Les données d'appel font référence aux informations envoyées avec une transac...

Voir tous les articles

User not found or password invalid

Your input is correct