Aller au contenu

Tokenizer

Solidity BEP-20 BNB Smart Chain OpenZeppelin

Création du token GOLD42 (G42) sur la BNB Smart Chain Testnet : mon premier smart contract.


Présentation

Un token BEP-20 GOLD42 (G42) déployé sur la BNB Smart Chain Testnet : solde, transferts, autorisations, création et destruction de tokens, le tout sur la blockchain.


Contexte

Projet solo réalisé dans le cadre du partenariat 42 × BNB Chain.

L'objectif : comprendre concrètement le fonctionnement d'une blockchain en créant, testant et déployant un token BEP-20 réel sur un réseau de test, sans jamais engager d'argent réel.


Mon rôle

Projet 100 % solo, mené de bout en bout :

  • Conception de la tokenomics : supply plafonnée, répartition 80 % / 20 %
  • Rédaction du smart contract g42.sol en Solidity
  • Déploiement sur la BSC Testnet via Remix + MetaMask
  • Vérification du code source sur BscScan
  • Rédaction de la documentation (livre blanc, guide de déploiement, tutoriel pas à pas)

Architecture

Un contrat unique GOLD42 qui hérite de l'implémentation ERC20 d'OpenZeppelin (standard de référence). L'héritage fournit les fonctions natives : transfer, approve, transferFrom, balanceOf, totalSupply.

Le contrat ajoute sa logique métier : un mécanisme de propriété maison (onlyOwner), un mint plafonné par la supply maximale, un burn public et un transfert de propriété protégé.

GOLD42 is ERC20 (OpenZeppelin)
├── from ERC20    : transfer, approve, transferFrom, balanceOf, totalSupply…
├── mint()        : création de tokens, réservée au propriétaire, plafonnée
├── burn()        : destruction de ses propres tokens, public
└── transferOwnership() : changement de propriétaire, refuse l'adresse zéro

Technologies

Langage
Solidity ^0.8.0
Typé et compilé pour l'EVM
Bibliothèque
OpenZeppelin Contracts
l'implémentation ERC-20 de référence
Supports
Remix IDE
IDE en ligne pour écrire et compiler le contrat
MetaMask
portefeuille connecté (Injected Provider)
BscScan Testnet
explorateur et vérification du contrat
Réseau
BNB Smart Chain Testnet
blockchain EVM, Chain ID 97

Fonctionnalités

Fonction Rôle Accès
transfer(to, amount) Envoyer des G42 Tous
balanceOf(account) Consulter un solde Lecture
approve(spender, amount) Autoriser un tiers à dépenser Tous
transferFrom(from, to, amount) Dépenser via une autorisation Spender autorisé
mint(recipient, amount) Créer des G42 (limité au plafond) Propriétaire
burn(amount) Détruire définitivement ses propres G42 Tous
transferOwnership(newOwner) Transférer la propriété du contrat Propriétaire

Problème | Solution

Problème Solution
Comprendre la blockchain avant d'écrire une ligne de code Assimiler les concepts clés - wallet, gas, transaction, explorateur de blocs - via la documentation du dépôt
Manipuler les unités avec précision Travailler en unités de base (wei) : 1 G42 = 10^18, pas en décimales flottantes
Garantir une offre prédictible Supply plafonnée absolue dans le contrat : mint() rejette tout dépassement de 1 000 000 G42
Sécuriser les actions sensibles Modificateur onlyOwner maison : seuls mint et transferOwnership sont restreints au propriétaire
Déployer sans argent réel Testnet BSC + faucet de tBNB gratuit - zéro argent réel engagé

Résultats

  • Smart contract déployé et vérifié sur BscScan : 0xB03B454DDa79A522603f2a21471A6bC6B24dDb80
  • 1 000 000 G42 de supply maximale, 800 000 (80 %) créés au déploiement, 200 000 (20 %) mintables par le propriétaire
  • 18 décimales, coût de déploiement : 0,001544511 BNB
  • Token importable dans MetaMask : transferts et échanges testés entre wallets

Ce que j'ai appris

La blockchain n'est pas magique : chaque transaction est un appel de fonction sur un contrat, et le vrai coût est la compréhension des unités (wei) et de la gestion de la propriété.

Débugger un smart contract est radicalement différent du C : pas de printf, pas de gdb ; il faut raisonner sur l'état du contrat avant de le déployer.


Tutoriel : Créer votre token BEP-20

Tu veux reproduire ce projet ? Consulte ce tutoriel qui couvre l'intégralité du processus, de l'installation de MetaMask à la vérification sur BscScan.

Commencer le tutoriel


Lien

Voir le code Contrat sur BscScan