Aller au contenu
buybitcoinsmart

Glossaire / Adresses et clés

P2TR

Aussi appelé adresse Taproot, Pay-to-Taproot, adresse bc1p.

Qu'est-ce que P2TR ?
P2TR paie vers une clé publique ajustée unique de 32 octets, si bien qu'une dépense par clé apparaît identique on-chain, qu'une seule personne ait signé ou qu'un contrat complexe ait été réglé en coopération.

Spécifié dans BIP-341.

Pay to taproot correspond à la version de témoin 1, active depuis le bloc 709 632 le 14 novembre 2021, et s'écrit sous la forme d'une adresse de 62 caractères commençant par bc1p. Une dépense coopérative publie une signature Schnorr de 64 octets et coûte environ 57,5 vbytes par entrée, l'entrée la moins chère sur bitcoin. Quelles que soient les règles alternatives intégrées dans la sortie, elles restent invisibles tant que personne ne les utilise réellement.

Comment cela fonctionne

Une sortie P2TR est OP_1 suivie d'un push de 32 octets, soit 34 octets au total, et ces octets sont une clé publique x-only. X-only signifie que la coordonnée y est abandonnée et déduite, ce qui économise un octet par rapport aux clés compressées de 33 octets utilisées partout ailleurs.

La clé que vous voyez n'est pas la clé que quiconque détient. C'est une clé interne ajustée par un hachage d'elle-même et de la racine de merkle d'un arbre de scripts alternatifs, de sorte que la valeur publiée engage à la fois le chemin coopératif et tous les chemins de repli. La dépense emprunte ensuite l'une de deux routes. Le chemin de clé produit une seule signature sur la clé ajustée et ne révèle rien d'autre. Le chemin de script révèle une feuille de l'arbre, plus les hachages de branche prouvant que cette feuille en fait partie, et laisse le reste de l'arbre secret pour toujours.

Les signatures Schnorr sous le BIP-340 rendent le chemin de clé peu coûteux et privé. Elles font 64 octets contre 71 ou 72 pour une signature ECDSA encodée DER, et elles s'additionnent linéairement, de sorte que plusieurs signataires peuvent combiner leurs clés et produire une seule signature sous MuSig2. Un montage 2-sur-2 qui coopère finit par être indiscernable d'une personne réglant une facture.

Comme la version de témoin 1 exige bech32m, une adresse bc1p utilise la constante de somme de contrôle du BIP-350 plutôt que celle du bech32 d'origine.

Où le voir

Les portefeuilles qui utilisent Taproot par défaut dérivent de la branche BIP-86 à m/86'/0'/0'. Bitcoin Core a ajouté l'encodage dans la version 22.0 et a commencé à générer des descripteurs tr() pour les nouveaux portefeuilles à descripteurs dans la version 23.0.

Les inscriptions placent des données arbitraires dans un témoin de chemin de script Taproot, ce qui explique qu'une grande part de l'activité bc1p n'a rien à voir avec des paiements. C'est un artefact de la remise sur les données de témoin plutôt qu'une propriété du type d'adresse.

La friction se situe aux extrémités. Certaines plateformes d'échange rejettent encore les destinations de retrait bc1p, et certains terminaux de paiement plus anciens aussi. Il n'existe pas de contournement dans votre portefeuille : utilisez une adresse bc1q issue de la même phrase de récupération, et consolidez plus tard si vous voulez tout regrouper sous Taproot.

P2TR vs Taproot

Taproot est la mise à niveau et P2TR est le type de sortie qu'elle a créé. Le soft fork a regroupé trois spécifications : le BIP-340 a défini les signatures Schnorr, le BIP-341 a défini le format de sortie et ses règles de dépense, et le BIP-342 a défini tapscript, le langage de script ajusté utilisé dans l'arbre. P2TR est la partie avec laquelle vous interagissez, l'adresse commençant par bc1p. Dire « j'utilise Taproot » signifie presque toujours « mon portefeuille me donne des adresses P2TR », mais la mise à niveau a aussi changé la façon dont les signatures sont vérifiées dans des scripts que vous ne toucherez peut-être jamais.

À ne pas confondre avec

Questions fréquentes

Faut-il utiliser une adresse bc1p ?

Utilisez-la si tout ce avec quoi vous interagissez en accepte une. Une entrée Taproot coûte environ 57,5 vbytes contre 68 pour une bc1q, l'économie est donc réelle mais modeste, et l'écart de compatibilité est le facteur décisif pour la plupart des gens.

Pourquoi mon retrait vers une adresse bc1p a-t-il été rejeté ?

La plateforme n'a pas ajouté la prise en charge de bech32m, que Bitcoin Core a livrée dans la version 22.0. Utilisez une adresse bc1q issue du même portefeuille. Les bitcoins arrivent au même endroit parce que les deux adresses proviennent d'une seule phrase de récupération.

À lire ensuite

Termes associés

Plus de termes : Adresses et clés

Lire cette page en anglais