Aller au contenu principal
Script

Tapscript

Tapscript est le langage de script de Taproot, mis à jour pour Schnorr et plus extensible. Permet d'inscrire plusieurs scripts dans un MAST avec révélation sélective. Active OP_CHECKSIGADD, supprime OP_CHECKMULTISIG. Base technique des contrats Bitcoin modernes.

Définition et origine

Tapscript est le langage de script introduit par le BIP-342, activé conjointement à Taproot le 14 novembre 2021. Il succède au Bitcoin Script v0 (hérité de Satoshi) pour les sorties P2TR utilisées en script path. La spécification a été rédigée par Pieter Wuille, Jonas Nick et Anthony Towns.

Comment ça fonctionne

Une sortie Taproot peut être dépensée :

  • Par key path : une signature Schnorr directe sur la clé tweakée
  • Par script path : révélation d'une feuille de l'arbre MAST et exécution d'un Tapscript

Chaque feuille contient un script et une leaf version. Le dépenseur révèle la feuille, le contrôle (chemin Merkle) et le witness, puis Bitcoin exécute le script en Tapscript.

Changements clés vs Script v0

| Opcode | Changement | |---|---| | OP_CHECKSIG / OP_CHECKSIGVERIFY | Signatures Schnorr, hash sighash V1 | | OP_CHECKMULTISIG | Supprimé | | OP_CHECKSIGADD | Nouveau : multisig efficace | | OP_SUCCESSx | 80 opcodes réservés pour upgrades futurs | | Limite Script | 10 000 octets retirée par feuille |

OP_CHECKSIGADD permet d'écrire un k-of-n multisig en N vérifications successives, chacune ajoutant 1 à un compteur si valide. Plus compact, plus parallélisable.

Cas d'usage

  • Multisig taproot-natif (3-of-5 vault par exemple)
  • DLC : contrats discrets avec branches d'oracle
  • Inscriptions Ordinals (qui exploitent la limite de script relâchée)
  • BitVM : émulation de calculs arbitraires par fragments de Tapscript

Limites

Tapscript reste un langage non-Turing-complet, sans boucles, sans covenants natifs. Les fonctionnalités attendues (OP_CAT, OP_CTV, OP_VAULT) nécessitent de nouveaux soft forks. La taille du witness reste limitée par la règle des 4 Mo de poids par bloc.

À retenir

Tapscript est aujourd'hui la couche de scripting où se construit l'innovation Bitcoin : du multisig efficace aux DLCs en passant par BitVM. Sa conception modulaire (via OP_SUCCESSx) permet d'introduire de nouveaux opcodes par soft fork sans casser la rétrocompatibilité.

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.