Aller au contenu

Vérificateur d'adresse de portefeuille crypto

Par
Publié le

Un transfert sur blockchain ne peut pas être annulé par une banque. Si vous collez une mauvaise adresse et que le transfert passe, les fonds sont en général irrécupérables. La plupart des formats d'adresse portent une somme de contrôle, pour qu'un caractère mal saisi soit détecté avant l'envoi. Le vérificateur ci-dessus applique ces contrôles à quatre familles de réseaux et vous dit ce qu'il a trouvé.

Comment fonctionne chaque contrôle

Le vérificateur essaie les formats dans un ordre fixe et s'arrête au premier qui correspond.

Ethereum et réseaux EVM

Une adresse est 0x suivi de 40 caractères hexadécimaux. EIP-55 ajoute une somme de contrôle par la casse : l'outil calcule le hachage Keccak-256 de l'adresse en minuscules et met en majuscule chaque lettre dont le chiffre de hachage correspondant vaut 8 ou plus.

  • Casse mixte qui correspond : adresse valide, somme de contrôle vérifiée.
  • Casse mixte qui ne correspond pas : au moins un caractère est faux. L'outil conseille de ne pas envoyer.
  • Tout en minuscules ou tout en majuscules : adresse valide, mais sans somme de contrôle. L'outil affiche la forme avec somme de contrôle.

L'outil nomme cette famille Ethereum et réseaux EVM, en citant Base, Arbitrum, Polygon, Optimism, BNB Chain et Avalanche.

Tron

Une adresse Tron compte 34 caractères et commence par T. C'est du texte Base58Check : une fois décodé, il donne 21 octets commençant par l'octet 0x41, plus une somme de contrôle de 4 octets. Le vérificateur recalcule cette somme comme les 4 premiers octets d'un double hachage SHA-256 et la compare.

Bitcoin

  • Les adresses bc1 (SegWit et Taproot) utilisent Bech32, défini par BIP-173, ou Bech32m, défini par BIP-350. Le vérificateur teste la somme de contrôle avec les deux constantes et rejette les adresses qui mélangent majuscules et minuscules.
  • Les adresses commençant par 1 ou 3 utilisent Base58Check. Après le test de somme de contrôle, la charge utile doit faire 21 octets avec un octet de version 0x00 (adresses commençant par 1) ou 0x05 (pay-to-script-hash commençant par 3, BIP-13).

Solana

Une adresse Solana compte 32 à 44 caractères Base58. La documentation Solana décrit les adresses de comptes comme des valeurs de 32 octets : l'outil décode donc le texte et l'accepte si le résultat fait exactement 32 octets. Solana n'inclut pas de somme de contrôle dans l'adresse.

Exemple détaillé

EIP-55 donne cette adresse de test :

0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed

Le hachage Keccak-256 de la version en minuscules commence par d385650c. Le premier caractère après 0x est 5, un chiffre : la casse ne s'applique pas. Le deuxième est a et son chiffre de hachage est 3, inférieur à 8, donc il reste en minuscule. Le troisième est encore a, mais son chiffre de hachage est 8, donc il devient A. L'outil répète l'opération pour les 40 caractères, le résultat est identique à l'adresse, et il signale une correspondance.

Passez maintenant le troisième caractère en minuscule : 0x5aaeb6053F3E.... L'adresse reste plausible à l'œil, mais le motif de casse ne correspond plus au hachage. L'outil indique que la somme de contrôle ne correspond pas et qu'il ne faut pas envoyer.

Collez la même adresse tout en minuscules et l'outil signale un format valide sans somme de contrôle, puis affiche la forme en casse mixte pour comparaison.

Les limites du vérificateur

  • Il ne connaît pas le réseau. Une adresse 0x valide l'est sur tous les réseaux EVM. Envoyer des USDC sur un réseau que le destinataire n'utilise pas peut rendre les fonds difficiles, voire impossibles, à atteindre.
  • Solana n'a pas de somme de contrôle. Une faute de frappe qui se décode encore en 32 octets passe le test.
  • Formats de mainnet uniquement. Les adresses Bitcoin de testnet, les adresses Tron en hexadécimal et les noms ENS sont signalés comme non reconnus.
  • Des sommes de contrôle, pas toutes les règles. Pour les adresses bc1, l'outil vérifie la somme Bech32 ou Bech32m, pas chaque règle structurelle de BIP-173 et BIP-350.
  • Aucune consultation de la blockchain. Il ne vérifie ni les soldes, ni si l'adresse appartient à un contrat intelligent, ni qui la contrôle.
  • Autres réseaux. Les adresses de réseaux hors de ces quatre familles ne sont pas reconnues.

Avant d'envoyer

Demandez au destinataire quel réseau utiliser, puis vérifiez que votre portefeuille ou votre prestataire le prend en charge. Le portefeuille auto-conservé de xChange.bg fonctionne sur Solana, Ethereum, Base, Arbitrum, Polygon et Optimism, et vous en détenez les clés. Pour un premier paiement vers une nouvelle adresse, un petit transfert de test permet de confirmer l'arrivée avant d'envoyer le reste.

Pour aller plus loin : adresse de portefeuille, réseau blockchain et comment fonctionne un portefeuille auto-conservé.

Questions fréquentes

Un résultat valide garantit-il l'arrivée des fonds ?

Non. Le vérificateur confirme que l'adresse est bien formée et que sa somme de contrôle correspond. Il ne dit pas si le destinataire la contrôle, si elle se trouve sur le réseau que vous comptez utiliser, ni si le service récepteur prend en charge le jeton.

Pourquoi la même adresse 0x fonctionne-t-elle sur plusieurs réseaux ?

Ethereum et les réseaux EVM comme Base, Arbitrum, Polygon et Optimism partagent un même format d'adresse : une adresse peut donc détenir des fonds sur chacun d'eux. Le contrôle de format ne peut pas dire quel réseau le destinataire attend.

Que signifie une adresse Ethereum tout en minuscules ?

C'est une adresse valide, sans somme de contrôle EIP-55. Rien d'anormal, mais une faute de frappe passerait inaperçue. Le vérificateur affiche la version avec majuscules et minuscules que vous pouvez comparer avec le destinataire.

Pourquoi un résultat Solana est-il moins sûr qu'un résultat Bitcoin ?

Les adresses Solana n'ont pas de somme de contrôle. L'outil peut seulement confirmer que le texte se décode en une clé de 32 octets. Un caractère modifié qui donne encore 32 octets passe le test : comparez donc les adresses Solana caractère par caractère.

L'adresse que je colle est-elle envoyée à un serveur ?

Non. Tous les contrôles s'exécutent dans votre navigateur, avec du code local. La page ne consulte pas la blockchain et n'envoie l'adresse ni à xChange.bg ni à personne d'autre.

L'outil accepte-t-il les adresses de testnet ou les noms ENS ?

Non. Il reconnaît uniquement les adresses Bitcoin de mainnet (bc1, 1 et 3), et il vérifie des adresses, pas des noms comme les domaines ENS. Tout le reste est signalé comme non reconnu.

Sources

  1. EIP-55 : encodage d'adresse avec somme de contrôle par la casse
  2. BIP-173 : format d'adresse base32 pour les sorties witness v0-16
  3. BIP-350 : format Bech32m pour les adresses witness v1 et suivantes
  4. BIP-13 : format d'adresse pour pay-to-script-hash
  5. Documentation Solana : comptes
  6. Documentation développeur TRON : comptes

À lire aussi

Autres outils