Capitalisation boursière: $2.7991T -6.33%
Volume(24h): $182.2077B 63.84%
Indice de peur et de cupidité:

38 - Peur

  • Capitalisation boursière: $2.7991T -6.33%
  • Volume(24h): $182.2077B 63.84%
  • Indice de peur et de cupidité:
  • Capitalisation boursière: $2.7991T -6.33%
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 créer et déployer un contrat intelligent sur Binance Smart Chain (BSC) ?

To deploy an ERC-20 token on BSC, set up Hardhat with BSC testnet config, write secure Solidity code (v0.8.20+), test locally, then deploy using a funded MetaMask wallet and verify on BscScan.

Jan 16, 2026 at 08:39 am

Configuration de l'environnement de développement

1. Installez Node.js et npm pour gérer les dépendances JavaScript requises pour les outils de contrats intelligents.

2. Initialisez un nouveau projet à l'aide de npm init et installez Hardhat comme framework de développement principal.

3. Ajoutez la configuration testnet BSC à hardhat.config.js en spécifiant l'URL RPC, l'ID de chaîne (97 pour testnet ou 56 pour le réseau principal) et les comptes via une clé privée ou un mnémonique.

4. Installez les plugins nécessaires, notamment @nomiclabs/hardhat-ethers , ethereum-waffle et hardhat-gas-reporter pour des capacités de test améliorées.

5. Configurez un fichier .env pour stocker en toute sécurité les clés privées et les points de terminaison d'API sans les exposer dans le contrôle de version.

Rédaction du code du contrat intelligent

1. Créez un fichier Solidity sous contracts/ , par exemple Token.sol , en utilisant l'identifiant de licence SPDX et la version pragma compatible avec le niveau de compatibilité EVM de BSC (par exemple, ^0.8.20).

2. Implémentez les fonctions standard ERC-20 telles que totalSupply , balanceOf , transfer , approuve et transferFrom .

3. Définissez des paramètres immuables tels que le nom, le symbole et les décimales pendant la construction, en garantissant qu'il n'existe aucune vulnérabilité de réentrance ou de débordement.

4. L'utilisation de SafeMath n'est pas nécessaire dans Solidity 0.8+ en raison des contrôles de débordement intégrés, mais les instructions require explicites doivent protéger les transitions d'état critiques.

5. Incluez des modificateurs personnalisés comme onlyOwner pour restreindre l'accès aux fonctions administratives telles que la frappe ou la pause des transferts.

Compiler et tester localement

1. Exécutez la compilation npx hardhat pour générer l'ABI et le bytecode à partir des fichiers sources Solidity.

2. Écrivez des scripts de test dans test/ en utilisant ethers.js et Waffle matchers pour vérifier les mises à jour d'équilibre, les émissions d'événements et les conditions de rétablissement.

3. Exécutez des tests avec npx hardhat test sur Hardhat Network pour simuler le comportement des transactions sans coûts de gaz.

4. Déployez des contrats fictifs pour l'injection de dépendances lors des tests unitaires, en particulier lors de l'interaction avec des protocoles externes tels que les routeurs PancakeSwap.

5. Validez la couverture à l'aide du plugin solidity-coverage pour garantir que toutes les branches et tous les cas extrêmes sont exercés avant le déploiement.

Déploiement sur BSC Testnet

1. Acquérir des BNB de test à partir du robinet BSC Testnet à l'aide d'un portefeuille MetaMask configuré pour l'ID de chaîne 97.

2. Écrivez un script de déploiement dans scripts/deploy.js qui se connecte au testnet BSC via le point de terminaison Alchemy ou QuickNode.

3. Signez et diffusez la transaction à l'aide d'un fournisseur Ethernet initialisé avec une instance de portefeuille dérivée d'une clé privée stockée dans l'environnement.

4. Surveillez l'état de la transaction sur testnet.bscscan.com à l'aide du hachage de transaction renvoyé pour confirmer la création réussie du contrat.

5. Vérifiez le code source sur BscScan en soumettant la version exacte du compilateur, les paramètres d'optimisation et les arguments du constructeur utilisés lors du déploiement.

Interagir avec le contrat déployé

1. Importez le contrat ABI dans une application frontale à l'aide de ethers.js et connectez-le à MetaMask avec le réseau BSC sélectionné.

2. Appelez des fonctions en lecture seule comme balanceOf directement via l'instance de contrat sans signer de transactions.

3. Initier des opérations de changement d'état telles que le transfert en construisant et en envoyant des transactions signées avec des limites de gaz et des frais appropriés.

4. Écoutez les événements tels que le transfert ou l'approbation à l'aide de contract.on() pour mettre à jour l'interface utilisateur en temps réel.

5. Intégrez-vous aux échanges décentralisés basés sur BSC en approuvant les allocations de jetons et en acheminant les échanges via le contrat de routeur de PancakeSwap.

Foire aux questions

Q : Puis-je déployer un contrat compilé pour Ethereum Mainnet directement sur BSC ? R : Oui, car BSC est compatible EVM et prend en charge un bytecode identique ; cependant, vérifiez les limites de gaz et les implications en termes de temps de blocage avant la migration.

Q : Pourquoi ma transaction de déploiement échoue-t-elle avec « panne d'essence » sur BSC Testnet ? R : Cela se produit souvent lorsque la limite de gaz est trop basse ou que le contrat contient des boucles coûteuses ou des écritures de stockage illimitées ; augmentez la valeur gasLimit dans le script de déploiement et examinez la complexité logique.

Q : Comment gérer les fonctionnalités spécifiques à BSC telles que les extensions BEP-20 ? R : étendez votre implémentation ERC-20 avec des ajouts BEP-20 tels que getOwner ou renounceOwnership , en vous assurant qu'ils respectent les normes d'interface recommandées par BSC.

Q : Est-il obligatoire de vérifier mon contrat sur BscScan après le déploiement ? R : La vérification n'est pas requise pour la fonctionnalité, mais elle est essentielle pour la transparence, l'auditabilité et l'intégration avec les portefeuilles et les explorateurs qui s'appuient sur un code source vérifié.

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

Comment exécuter un message inter-chaînes avec un contrat LayerZero ?

Comment exécuter un message inter-chaînes avec un contrat LayerZero ?

Jan 18,2026 at 01:19pm

Comprendre l'architecture LayerZero 1. LayerZero fonctionne comme un protocole d'interopérabilité léger et sans autorisation qui permet la com...

Comment mettre en œuvre EIP-712 pour la vérification sécurisée des signatures ?

Comment mettre en œuvre EIP-712 pour la vérification sécurisée des signatures ?

Jan 20,2026 at 10:20pm

Présentation de l'EIP-712 et objectif principal 1. EIP-712 définit une norme pour le hachage et la signature de données structurées typées dans le...

Comment se qualifier pour les parachutages en interagissant avec de nouveaux contrats ?

Comment se qualifier pour les parachutages en interagissant avec de nouveaux contrats ?

Jan 24,2026 at 09:00pm

Comprendre les exigences d'interaction contractuelle 1. La plupart des campagnes de largage nécessitent une interaction directe avec des contrats ...

Comment surveiller un contrat intelligent pour les alertes de sécurité ?

Comment surveiller un contrat intelligent pour les alertes de sécurité ?

Jan 21,2026 at 07:59am

Outils de surveillance en chaîne 1. Les explorateurs de blockchain comme Etherscan et Blockscout permettent une inspection en temps réel du bytecode d...

Comment mettre en place et financer un contrat de paiements automatisés ?

Comment mettre en place et financer un contrat de paiements automatisés ?

Jan 26,2026 at 08:59am

Comprendre le déploiement de contrats intelligents 1. Les développeurs doivent sélectionner une plate-forme blockchain compatible telle que Ethereum, ...

Comment utiliser les contrats OpenZeppelin pour créer des dApps sécurisées ?

Comment utiliser les contrats OpenZeppelin pour créer des dApps sécurisées ?

Jan 18,2026 at 11:19am

Comprendre les principes fondamentaux des contrats OpenZeppelin 1. OpenZeppelin Contracts est une bibliothèque de composants de contrats intelligents ...

Comment exécuter un message inter-chaînes avec un contrat LayerZero ?

Comment exécuter un message inter-chaînes avec un contrat LayerZero ?

Jan 18,2026 at 01:19pm

Comprendre l'architecture LayerZero 1. LayerZero fonctionne comme un protocole d'interopérabilité léger et sans autorisation qui permet la com...

Comment mettre en œuvre EIP-712 pour la vérification sécurisée des signatures ?

Comment mettre en œuvre EIP-712 pour la vérification sécurisée des signatures ?

Jan 20,2026 at 10:20pm

Présentation de l'EIP-712 et objectif principal 1. EIP-712 définit une norme pour le hachage et la signature de données structurées typées dans le...

Comment se qualifier pour les parachutages en interagissant avec de nouveaux contrats ?

Comment se qualifier pour les parachutages en interagissant avec de nouveaux contrats ?

Jan 24,2026 at 09:00pm

Comprendre les exigences d'interaction contractuelle 1. La plupart des campagnes de largage nécessitent une interaction directe avec des contrats ...

Comment surveiller un contrat intelligent pour les alertes de sécurité ?

Comment surveiller un contrat intelligent pour les alertes de sécurité ?

Jan 21,2026 at 07:59am

Outils de surveillance en chaîne 1. Les explorateurs de blockchain comme Etherscan et Blockscout permettent une inspection en temps réel du bytecode d...

Comment mettre en place et financer un contrat de paiements automatisés ?

Comment mettre en place et financer un contrat de paiements automatisés ?

Jan 26,2026 at 08:59am

Comprendre le déploiement de contrats intelligents 1. Les développeurs doivent sélectionner une plate-forme blockchain compatible telle que Ethereum, ...

Comment utiliser les contrats OpenZeppelin pour créer des dApps sécurisées ?

Comment utiliser les contrats OpenZeppelin pour créer des dApps sécurisées ?

Jan 18,2026 at 11:19am

Comprendre les principes fondamentaux des contrats OpenZeppelin 1. OpenZeppelin Contracts est une bibliothèque de composants de contrats intelligents ...

Voir tous les articles

User not found or password invalid

Your input is correct