Aller au contenu principal

BIP-0349

BIP

Proposition de Brandon Black et Jeremy Rubin introduisant l’opcode OP_INTERNALKEY dans Tapscript. Cet opcode remplace OP_SUCCESS203 (0xcb) et place la représentation x-only de 32 octets de la clé interne Taproot (internal key) directement sur la pile lors de l’exécution d’un script. Actuellement, un tapscript qui a besoin de référencer la clé interne doit l’inclure explicitement dans ses données, ce qui consomme 8 vBytes supplémentaires on-chain. OP_INTERNALKEY élimine cette redondance.

Au-delà de cette économie d’espace, l’opcode ouvre un cas d’usage important : le « re-keying » avec préservation de l’arbre de Merkle. Lorsque la clé interne d’une sortie Taproot est modifiée (par exemple, pour ajouter ou retirer un participant), les scripts dans les feuilles de l’arbre qui référencent cette clé en dur deviennent incohérents. Avec OP_INTERNALKEY, les feuilles se re-keyent automatiquement, car l’opcode renvoie toujours la clé interne courante.

Termes associés :