Avalanche est un réseau en preuve d'enjeu réputé pour sa finalité rapide, composé d'un réseau principal et de blockchains personnalisées que les projets peuvent lancer avec leurs propres validateurs et règles. La plupart des smart contracts tournent sur la C-Chain, compatible EVM. Un projet peut donc démarrer avec les outils Ethereum habituels, puis envisager une chaîne dédiée s'il a besoin de son propre token de frais, de permissions ou de réglages de performance.
Développer sur Avalanche
Sur la C-Chain, les contrats sont écrits en Solidity ou en Vyper et déployés avec les frameworks EVM standard. Les chaînes personnalisées peuvent aussi faire tourner une EVM, parfois enrichie de contrats précompilés qui ajoutent des fonctions natives comme des listes d'autorisation ou le paramétrage des frais. Avalanche fournit une messagerie native entre ses chaînes, utilisée pour transférer des actifs ou des instructions.
- Langages : Solidity, Vyper
- Frameworks : Foundry, Hardhat
- Chaînes personnalisées : configuration de l'EVM, précompilés et gestion des validateurs entrent dans le périmètre
Ce que regardent les auditeurs
- La messagerie entre chaînes : vérification de la chaîne et de l'expéditeur d'origine, protection contre le rejeu, gestion des échecs
- La configuration des chaînes personnalisées : précompilés, listes d'autorisation, frais, et qui peut les modifier
- Les actifs pontés et la confiance accordée au pont émetteur
- Les hypothèses de finalité rapide dans les services hors chaîne et les automates
- Les risques EVM habituels : réentrance, manipulation d'oracle, contrôle d'accès, proxys évolutifs
Avant de demander des devis
- Précisez si vous déployez sur la C-Chain, sur une chaîne personnalisée, ou les deux
- Pour une chaîne personnalisée, fournissez sa configuration initiale et la liste des précompilés activés
- Décrivez chaque flux entre chaînes et les contrats aux deux extrémités
- Fournissez le commit hash, le périmètre et les tests, y compris ceux des messages entre chaînes