Glossar · im Detail

Opcode

Eine Ein-Byte-Anweisung in Bitcoin Script, etwa OP_DUP oder OP_CHECKSIG.

Bitcoin Script ist eine von links nach rechts gelesene Anweisungsliste. Jede Anweisung ist ein Opcode: ein einzelnes Byte, das dem Interpreter sagt, was zu tun ist. Daten-Pushes legen Bytes (etwa eine Signatur oder einen öffentlichen Schlüssel) auf einen Stack; andere Opcodes nehmen Elemente vom Stack, arbeiten damit und legen ein Ergebnis zurück.

Beispiele

  • OP_DUP kopiert das oberste Stack-Element.
  • OP_HASH160 ersetzt das oberste Element durch seinen SHA-256- und dann RIPEMD-160-Hash.
  • OP_EQUALVERIFY lässt das Script scheitern, sofern die beiden obersten Elemente nicht gleich sind.
  • OP_CHECKSIG prüft eine digitale Signatur gegen einen öffentlichen Schlüssel.
  • OP_RETURN markiert einen Output als nachweislich unspendbar, oft genutzt, um kleine Datenstücke einzubetten.

Deaktivierte und reservierte Opcodes

2010 wurden mehrere Opcodes wie OP_CAT und OP_MUL deaktiviert, um Denial-of-Service-Bugs zu vermeiden. Ungenutzte „NOP“-Opcodes wurden später durch Soft Fork neu definiert: OP_NOP2 wurde OP_CHECKLOCKTIMEVERIFY und OP_NOP3 wurde OP_CHECKSEQUENCEVERIFY. In Tapscript heißen ungenutzte Opcodes OP_SUCCESS und vereinfachen künftige Upgrades.