BTC 脚本与地址总结

常用的操作码1.基本操作码OP_0(0x00)💡作用:将数值0(false)压入堆栈。💡用途:通常用于标记或填充空位。OP_1(0x51)到OP_16(0x60)💡作用:将数值1到16压入堆栈。💡用途:用于条件语句和多重签名验证。2.堆栈操作

常用的操作码

1.基本操作码

  • OP_0 (0x00) 💡作用: 将数值0(false)压入堆栈。 💡用途: 通常用于标记或填充空位。

  • OP_1 (0x51) 到 OP_16 (0x60) 💡作用: 将数值 1 到 16 压入堆栈。 💡用途: 用于条件语句和多重签名验证。

    2.堆栈操作

  • OP_DUP (0x76) 💡作用: 复制堆栈顶部的项。 💡用途: 常用于重复使用堆栈顶部的值。

  • OP_DROP (0x75) 💡作用: 移除堆栈顶部的项。 💡用途: 删除不再需要的值。

  • OP_SWAP (0x7c) 💡作用: 交换堆栈顶部的两项。 💡用途: 改变堆栈中项的顺序。

3.算术和逻辑操作

  • OP_ADD (0x93) 💡作用: 将堆栈顶部的两个数相加并将结果压入堆栈。 💡用途: 执行简单的加法操作。
  • OP_EQUAL (0x87) 💡作用: 比较堆栈顶部的两个值,如果相等则返回true(压入1),否则返回false(压入0)。 💡用途: 比较两个值是否相等。
  • OP_EQUALVERIFY (0x88) 💡作用: 运行OP_EQUAL,然后根据结果决定是否继续执行脚本。如果结果为false,则脚本失败。 💡用途: 常用于验证签名等条件。

4.加密和哈希操作

  • OP_SHA256 (0xa8) 💡作用: 对堆栈顶部的项执行SHA-256哈希运算,并将结果压入堆栈。 💡用途: 生成数据的哈希值。
  • OP_HASH160 (0xa9) 💡作用: 对堆栈顶部的项先执行SHA-256哈希运算,再执行RIPEMD-160哈希运算,并将结果压入堆栈。 💡用途: 生成比特币地址的哈希值。
  • OP_CHECKSIG (0xac) 💡作用: 验证堆栈顶部的签名是否有效。 💡用途: 确认交易的有效性。
  • OP_CHECKMULTISIG (0xae) 💡作用: 验证多个签名是否有效。 💡用途: 多重签名验证。

5.条件操作

  • OP_IF (0x63) 💡作用: 如果堆栈顶部的值为true,则执行接下来的操作码,直到遇到OP_ELSE或OP_ENDIF。 💡用途: 用于条件执行。
  • OP_ELSE (0x67) 💡作用: 与OP_IF配合使用,执行OP_IF条件为false时的操作码。 💡用途: 用于条件执行。
  • OP_ENDIF (0x68) 💡作用: 结束条件执行块。 💡用途: 用于条件执行。

    script

script.png

address

address.jpg

点赞 0
收藏 0
分享

0 条评论

请先 登录 后评论
runtoweb3.com
runtoweb3.com
0x5F12...732b
江湖只有他的大名,没有他的介绍。