Aller au contenu principal

OP_SUCCESS

Les OP_SUCCESS représentent une série d’opcodes qui ont été désactivés par le passé et qui sont dorénavant réservés pour une utilisation future dans Tapscript. Leur but final est de faciliter des mises à jour et des extensions du langage script, en permettant l’introduction de nouvelles fonctionnalités via des soft forks. Lorsqu’un de ces opcodes est rencontré dans un script, il entraîne la réussite immédiate et inconditionnelle de l’ensemble du script, peu importe les données ou les conditions présentes. L’exécution ne se poursuit pas : le script est directement considéré comme valide.

Ainsi, lorsque l’on ajoute un nouvel opcode sur un OP_SUCCESS, cela représente forcément l’ajout d’une règle plus restrictive que la règle précédente. Les nœuds à jour peuvent alors vérifier le respect de cette règle et les nœuds pas à jour ne refuseront pas les transactions associées et les blocs qui les incluent, car l’OP_SUCCESS valide cette partie du script. Il n’y a donc pas de hard fork.

En comparaison, les OP_NOP (No Operation) servent également de marqueurs de place dans le script, mais ils n’ont aucun effet sur l’exécution du script. Lorsqu’un OP_NOP est rencontré, le script continue simplement sans modifier l’état de la pile ou le déroulement du script. La différence clé est donc dans leur impact sur l’exécution : OP_SUCCESS entraîne la réussite immédiate de l’ensemble du script, tandis que OP_NOP est neutre, et n’affecte ni la pile ni le flux du script. Ces opcodes sont désignés par OP_SUCCESSNN est un numéro permettant de différencier les OP_SUCCESS.

Termes associés :