Aller au contenu
buybitcoinsmart

Glossaire / Adresses et clés

Niveau purpose du BIP-44

Qu'est-ce que le niveau purpose du BIP-44 ?
Le niveau purpose du BIP-44 est le premier nombre d'un chemin de dérivation HD, durci et fixé à 44', qui revendique tout le sous-arbre situé en dessous pour une norme de portefeuille.

Spécifié dans BIP-44.

Le purpose est le premier des cinq niveaux que le BIP-44 définit sous la clé maîtresse, et le BIP-43 réserve cet emplacement pour que des dispositions de portefeuille incompatibles ne partagent jamais un arbre. Le BIP-44 fixe la valeur à 44', écrite 0x8000002C, et la spécification a été attribuée le 24 avril 2014. Ouvrez un portefeuille sur le mauvais purpose et il reconstruit des adresses différentes à partir de la même phrase de récupération, affiche zéro, et laisse vos bitcoins sur la chaîne.

Comment cela fonctionne

Le niveau purpose est l'indice durci situé directement sous la clé maîtresse, et le BIP-44 le fixe à la constante 44'. Tout ce qui se trouve en dessous appartient à cette norme, selon une forme fixe à cinq niveaux : m / purpose' / coin_type' / account' / change / address_index. Le 44 est le numéro du BIP lui-même, ce que recommande le BIP-43.

Ce que le niveau déclare est plus étroit que la plupart des gens le supposent. Le BIP-44 dit seulement que la constante "indicates that the subtree of this node is used according to this specification". Aucun format d'adresse n'est nommé dans le document.

Sous le purpose, le durcissement s'applique pendant deux niveaux supplémentaires puis s'arrête.

NiveauIndiceDurciSélectionne
purpose44'ouila norme qui possède le sous-arbre
coin type0'ouibitcoin, où 1' désigne le testnet
account0'ouiune identité, numérotée à partir de 0
change0nonchaîne externe 0, interne 1
address index0nonl'adresse, en comptant vers le haut

Ainsi m / 44' / 0' / 0' / 0 / 0 est la première adresse de réception du premier compte bitcoin, et déplacer le troisième niveau vers 1' ouvre un second compte qui ne partage aucun historique avec le premier. Seuls deux coin types apparaissent dans le BIP-44 lui-même, 0 et 1 ; les autres figurent dans le SLIP-0044, que SatoshiLabs maintient et auquel le BIP renvoie.

Où le voit-on

Le niveau purpose apparaît dans chaque chemin de dérivation qu'un portefeuille affiche, et 44' est celui qui signifie legacy. Un chemin commençant par 44' produit des adresses qui commencent par 1, mais pas parce que le BIP-44 a choisi ce format. Le BIP-44 est antérieur à toutes les alternatives, et la règle selon laquelle un purpose implique un type d'adresse est venue plus tard : le BIP-49 en 2016, le BIP-84 en 2017 et le BIP-86 en 2021 ont chacun pris une valeur de purpose propre pour marquer un type de script différent.

Cela a un coût que vous rencontrez au moment de la restauration. Comme chaque norme possède une branche distincte, la routine de découverte des comptes que décrit le BIP-44 s'exécute une fois par purpose pris en charge par le logiciel, et chaque exécution parcourt une chaîne externe jusqu'à atteindre la limite d'écart, actuellement fixée à 20 adresses inutilisées d'affilée, avant d'abandonner. Un portefeuille proposant quatre formats effectue quatre parcours. Un portefeuille qui n'en propose qu'un effectue un seul parcours, ne trouve aucun historique sur sa branche, et affiche un compte vide alors que les bitcoins se trouvent sous un premier numéro différent.

En pratique, la valeur apparaît dans les détails du compte d'un portefeuille à côté de la clé publique étendue, ou dans le champ de texte libre qu'offre une restauration avancée. Notre avis sur Electrum liste comme inconvénient le fait que l'interface suppose que vous savez déjà ce qu'est une adresse de change et un chemin de dérivation, et le purpose est la partie de ce champ à renseigner correctement en premier. Une vérification rapide : un deuxième niveau indiquant 1' plutôt que 0' est une branche testnet, où rien n'est de l'argent réel.

Niveau purpose du BIP-44 vs chemin de dérivation

Le niveau purpose est un nombre dans un chemin, pas le chemin lui-même. Un chemin nomme cinq niveaux dans l'ordre, et remplacer uniquement le premier, de 44' à 84', confie la même phrase de récupération à une norme différente tandis que les niveaux inférieurs conservent les significations que leur a données le BIP-44 : le BIP-84 les réutilise sans changement. Un chemin relève du BIP-44 uniquement lorsque son premier niveau indique 44', et c'est ce premier nombre, non le libellé imprimé à côté, qui vous dit quelle norme a construit les adresses.

À ne pas confondre avec

Questions fréquentes

Un chemin commençant par 44' désigne-t-il toujours des adresses legacy ?

En pratique oui, mais le BIP-44 lui-même ne nomme aucun format d'adresse. Il dit seulement que la constante marque un sous-arbre utilisé conformément à cette spécification, et la règle selon laquelle un purpose implique un type de script a été établie plus tard, lorsque le BIP-49, le BIP-84 et le BIP-86 ont chacun pris une valeur de purpose propre.

Pourquoi le numéro de purpose est-il 44 ?

Parce que le BIP-43 recommande qu'un schéma utilise son propre numéro de BIP comme constante de purpose, ce qui donne au BIP-44 la constante 44', écrite 0x8000002C. Cette valeur n'a pas d'autre sens que de marquer quelle norme possède la branche située en dessous.

Puis-je quitter la branche 44' pour un type d'adresse plus récent ?

Oui. Une seule phrase de récupération alimente toutes les branches de purpose à la fois, de sorte qu'un portefeuille peut ouvrir un compte sous un purpose différent et vous y envoyez les anciens bitcoins par une transaction ordinaire. Rien ne change entre-temps sur la branche 44', et les adresses qui s'y trouvent continuent de fonctionner.

À lire ensuite

Termes associés

Plus de termes : Adresses et clés

Lire cette page en anglais