[−][src]Module sv::script::op_codes
Script commands
Constants
OP_0 | Pushes 0 onto the stack |
OP_0NOTEQUAL | Returns 0 if the input is 0. 1 otherwise. |
OP_1NEGATE | Pushes -1 onto the stack |
OP_1 | Pushes 1 onto the stack |
OP_1ADD | Adds 1 to the input |
OP_1SUB | Subtracts 1 from the input |
OP_2 | Pushes 2 onto the stack |
OP_2DROP | Removes the top two items from the stack |
OP_2DUP | Duplicates the top two stack items |
OP_2OVER | Copies the pair of items two spaces back to the front |
OP_2ROT | The fifth and sixth items back are moved to the top of the stack |
OP_2SWAP | Swaps the top two pairs of items |
OP_3 | Pushes 3 onto the stack |
OP_3DUP | Duplicates the top three stack items |
OP_4 | Pushes 4 onto the stack |
OP_5 | Pushes 5 onto the stack |
OP_6 | Pushes 6 onto the stack |
OP_7 | Pushes 7 onto the stack |
OP_8 | Pushes 8 onto the stack |
OP_9 | Pushes 9 onto the stack |
OP_10 | Pushes 10 onto the stack |
OP_11 | Pushes 11 onto the stack |
OP_12 | Pushes 12 onto the stack |
OP_13 | Pushes 13 onto the stack |
OP_14 | Pushes 14 onto the stack |
OP_15 | Pushes 15 onto the stack |
OP_16 | Pushes 16 onto the stack |
OP_ABS | The input is made positive |
OP_ADD | Adds a to b |
OP_AND | Boolean and between each bit in the inputs |
OP_BIN2NUM | Converts byte sequence x into a numeric value |
OP_BOOLAND | If both a and b are not empty, the output is 1. Otherwise, 0. |
OP_BOOLOR | If a or b is not empty, the output is 1. Otherwise, 0. |
OP_CAT | Concatenates two byte sequences |
OP_CHECKLOCKTIMEVERIFY | Marks transaction as invalid if the top stack item is greater than the transaction's lock_time |
OP_CHECKMULTISIG | Puts 1 on the stack if m of n signatures authorize the public key and transaction hash. Otherwise 0. |
OP_CHECKMULTISIGVERIFY | Same as OP_CHECKMULTISIG, but OP_VERIFY is executed afterward |
OP_CHECKSEQUENCEVERIFY | Marks transaction as invalid if the top stack item is less than the transaction's sequence used for relative lock time |
OP_CHECKSIG | Puts 1 on the stack if the signature authorizes the public key and transaction hash. Otherwise 0. |
OP_CHECKSIGVERIFY | Same as OP_CHECKSIG, but OP_VERIFY is executed afterward |
OP_CODESEPARATOR | Marks the part of the script after which the signature will begin matching |
OP_DEPTH | Puts the number of stack items onto the stack |
OP_DIV | Divides a by b |
OP_DROP | Drops the top stack value |
OP_DUP | Duplicates the top stack item |
OP_ELSE | If the preceding OP_IF or OP_NOTIF statemetns were not executed, then statements are executed. |
OP_ENDIF | Ends an if-else block |
OP_EQUAL | Returns 1 if the inputs are exactly equal, 0 otherwise |
OP_EQUALVERIFY | Same as OP_EQUAL, but runs OP_VERIFY afterward |
OP_FALSE | Pushes 0 onto the stack |
OP_FROMALTSTACK | Moves the top item on the alt stack to the main stack |
OP_GREATERTHAN | Returns 1 if a is greater than b. Otherwise, 0. |
OP_GREATERTHANOREQUAL | Returns 1 if a is greater than or equal to b. Otherwise, 0. |
OP_HASH160 | The input is hashed twice: first with SHA-256 and then with RIPEMD-160 |
OP_HASH256 | The input is hashed two times with SHA-256 |
OP_IF | If the top stack is true, statements are executed. Top stack value is removed. |
OP_IFDUP | Duplicates the top stack value if it is not zero |
OP_LESSTHAN | Returns 1 if a is less than b. Otherwise, 0. |
OP_LESSTHANOREQUAL | Returns 1 if a is less than or equal to b. Otherwise, 0. |
OP_MAX | Returns the larger of a and b |
OP_MIN | Returns the smaller of a and b |
OP_MOD | Returns the remainder after dividing a by b |
OP_NEGATE | The sign of the input is flipped |
OP_NIP | Removes the second-to-top stack item |
OP_NOP | Does nothing |
OP_NOT | If the input is 0 or 1, it is flipped. Otherwise, the output will be 0. |
OP_NOTIF | If the top stack is false, statements are executed. Top stack value is removed. |
OP_NUM2BIN | Converts numeric value a into a byte sequence of length b |
OP_NUMEQUAL | Returns 1 if the numbers are equal. Otherwise, 0. |
OP_NUMEQUALVERIFY | Same as OP_NUMEQUAL, but runs OP_VERIFY afterward |
OP_NUMNOTEQUAL | Returns 1 if the numbers are not equal. Otherwise, 0. |
OP_OR | Boolean or between each bit in the inputs |
OP_OVER | Copies the second-to-top stack item to the top |
OP_PICK | The item n back in the stack is copied to the top |
OP_PUSH | Offset by n to push n bytes onto the stack, where n: [1-75] |
OP_PUSHDATA1 | The next byte sets the number of bytes to push onto the stack |
OP_PUSHDATA2 | The next two bytes sets the number of bytes to push onto the stack |
OP_PUSHDATA4 | The next four bytes sets the number of bytes to push onto the stack |
OP_RETURN | Marks a statements as invalid |
OP_RIPEMD160 | The input is hashed using RIPEMD-160 |
OP_ROLL | The item n back in the stack is moved to the top |
OP_ROT | The top three items on the stack are rotated to the left |
OP_SHA1 | The input is hashed using SHA-1 |
OP_SHA256 | The input is hashed using SHA-256 |
OP_SIZE | Pushes the byte sequence length of the top stack item without popping it |
OP_SPLIT | Splits the byte sequence at position n |
OP_SUB | Subtracts b from a |
OP_SWAP | The top two items on the stack are swapped |
OP_TOALTSTACK | Moves the top item on the main stack to the alt stack |
OP_TRUE | Pushes 1 onto the stack |
OP_TUCK | The item at the top of the stack is copied and inserted before the second-to-top item |
OP_VERIFY | Marks a statement as invalid if the top stack value is false. Top stack value is removed. |
OP_WITHIN | Returns 1 if x is within the specified range, left inclusive. Otherwise, 0. |
OP_XOR | Boolean exclusive or between each bit in the inputs |