比特币 脚本 指令目录
比特币 脚本 指令
1.操作码(OPcodes)。
复制堆栈顶部的元素。
op_hash160:创建160位哈希值。
op_equal:比较堆栈最上面的两个元素是否相等。
op_equalverify:堆栈的顶部元素与之前的比较结果进行比较,只有当它们相等时才继续执行。
o_checksig:验证签名检查值。
o_checksigverify:与o_checksig相似,但后续会有追加的验证。
o_checkmultisig:对于多个签名的地址,多个公开密钥中的至少一个验证是有效的。
op_return:从之后的数据向区块链广播信息,但该数据不用于脚本操作。
OP _if、OP _notif:有条件指令,用于执行基于条件的代码路径。
与OP _else、OP _endif: OP _if一起使用提供另一种代码路径。
2.数据造假
PUSHDATA:用于推送任何长度的数据块(176字节)。
PUSH:直接将特定大小的字节数据(1到76字节大小)推入堆栈。
3.其他命令。
o_false, o_true:用于条件确定,给出逻辑上为真或为假的值。
op_toaltstack和op_fromaltstack:用于在主栈和备用栈之间传输数据。
使用示例。
简单的P2PKH(公开?私钥地址)交易场景如下。
```
o_dup。
o_hash160。
o_equalverify
o_checksig
```
在这个场景中,首先复制输入公钥的哈希值,检查哈希值与输出地址是否一致,验证签名。
注意事项。
1.堆栈操作:比特币脚本使用堆栈来存储值。操作码通常包括堆栈操作,例如推值、移除值或比较值。
2.大小限制:脚本的大小有限制,通常最多100字节。
要理解比特币的脚本指令,需要有编程基础和对区块链技术的深刻理解。随着技术的发展,新的指令和方法不断出现,使得开发者能够生成更加复杂的智能合约和功能。
小白求助,如何发送数量很小的btc?比如说几聪或者几百聪?
手工构建交易并发送。
流程:1.在blockexplorer or blockchain.ifno中查找收入来源的TX hash、txout index和txout脚本。
2 .二进制数据的盖帽创造版本第一个txinprev tx hash] | [txout索引]|[txout script第一个txoutvalue|pk script3hash type。在秘密密匙上签名,生成SIG。版本第一txinprev tx hash] |[txout索引]|mboa -瑞士和pubkey第一txoutvalue|pk script[]5 . = hash 256() 6。按照比特币的协议对socket进行编程,与其他节点握手。插口