专栏名称: 申龙斌的程序人生
分享可繁殖的知识与技能:GTD时间管理、读书心得、个人成长、财富自由之路
目录
相关文章推荐
蚂蚁技术AntTech  ·  揭秘MCP生态中的「暗面」:Agent如何成 ... ·  16 小时前  
程序员的那些事  ·  神操作!中国工程师拖 4 箱硬盘 80TB ... ·  2 天前  
腾讯技术工程  ·  让小程序从“能用”到“好用”——还差一个Bu ... ·  3 天前  
京东零售技术  ·  技术天才集结令!6/26 ... ·  3 天前  
极客之家  ·  美观、易用,一款最好用的 Windows ... ·  4 天前  
51好读  ›  专栏  ›  申龙斌的程序人生

比特币的脚本体系

申龙斌的程序人生  · 公众号  · 程序员  · 2019-02-20 22:13

正文

请到「今天看啥」查看全文



第2步,再压入一个数字。


第3步,执行OP_DUP指令,这个指令的含义是把堆栈顶端的数字复制一份。


第4步,可以看到堆栈发生的变化,开始对顶端的元素执行OP_HASH160操作,将生成一个20字节的数。


回顾一下精通比特币中有关公钥生成比特币地址的过程:

HASH160(x) = RIPEMD160( SHA256(x) )

在《 我生成的比特币地址竟然与别人的重合了 》里介绍过bx.exe程序,可以执行这个命令,看一下结果:

bx sha256

042e88d239fb78cee0c1c55943a96dcc8b70adf47e18b53f9ba110b6fb871e1f8bb119f9161df032167181d623a401dde4091c3e0be2001e4dea3e1f53f851aa3a

| bx ripemd160


第5步,可以看到堆栈中出现了一个20字节的数。开始准确执行下一条命令,是PUSHDATA(0x4a32....b1b9)。



第6步,堆栈中出现两个一模一样的数字,准备执行OP_EQUALVERIFY命令。


第7步,OP_EQUALVERFIY实际上是两个指令,OP_EQUAL和OP_VERIFY,吃掉堆栈上两个元素,如果一样,返回1。







请到「今天看啥」查看全文