原文精选:销毁证明(proof of burn)脚本,用于销毁比特币(即防止资金被赎回)。如果交易代码的运行结果是将比特币转到“销毁证明”脚本,那么这笔比特币将被销毁。实际应用中主要是用来引导客户使用其他数字货币系统,即将比特币销毁,以便获得另一个数字货币系统发行的新币。我们会在第10章展开叙述。销毁证明脚本使用起来非常简便:使用OP_RETURN脚本来抛出错误;不论之前指令的运行结果是什么,OP_RETURN指令总会被执行,并相应抛出一个错误,脚本返回一个“错误”(false)值。
由于OP_RETURN以抛出错误的形式结束脚本,其后的所有指令都不会执行。利用这个特性,我们可以往脚本中植入任意信息,这些信息也将被存储在区块链中。假如你想通过署名或者盖时间戳的方式来证明你在某个时候知道某件事情,就可以发起一笔极小额的比特币交易,在脚本中加入上述信息,并使用销毁证明脚本将币销毁,这样就可以将信息永久地存储在区块链上。
读书笔记:
1,销毁证明(proof of burn)脚本,用于销毁比特币(即防止资金被赎回)。如果交易代码的运行结果是将比特币转到“销毁证明”脚本,那么这笔比特币将被销毁。
2,由于OP_RETURN以抛出错误的形式结束脚本,其后的所有指令都不会执行。
支付给脚本的哈希值
原文精选:如前文所述,比特币的工作机制要求币的发送者必须在交易时明确指定脚本。这种机制有时候不太适用:假如你在网店看中了一件商品并打算下单,你会问卖家“请把付款地址告诉我,我可以付款了”,但如果卖家使用了多重签名地址(MULTISIG),那他会说“嘿,我们用了多重签名地址,你需要支付给一个脚本地址,而不是一个简单的地址”,但你会说“我不知道怎么弄,这太复杂了,我只会支付给简单的地址”。
比特币用了一种很聪明的办法来解决这个问题,不仅可以实现多重签名地址支付,而且还可以实现复杂的资金监管规则。比特币使用的办法是:收款方告诉付款方“请把比特币支付给某个脚本地址,脚本的哈希值是××,在取款的时候,我会提供上述哈希值对应的脚本,同时,提供数据通过脚本的验证”,而不是“请把比特币支付给某个公钥,公钥的哈希值是××”。付款方通过P2SH即可实现上述交易。
需要说明的是,P2SH脚本只是对堆栈最顶层的数据进行哈希运算,核验运算结果是否与给定的哈希值一致,核验通过后,再执行一步特殊的核验:将堆栈最顶层的数据重新解读为一系列指令,然后将其作为脚本运行一次,此时,堆栈中的其他数据作为脚本的输入值。
读书笔记:
1,比特币的工作机制要求币的发送者必须在交易时明确指定脚本,这种机制有些情况下会不好操作。
2,比特币不仅可以实现多重签名地址支付,而且还可以实现复杂的资金监管规则。
原文精选:要做到P2SH还是有点复杂的,因为P2SH不是比特币的原始设计,是后来加上去的。它解决了两个重要的问题:让付款方的支付工作简单化,收款方只需告诉付款方一个哈希值即可。在我们上面的例子中,你不再需要去关心商家到底用哪种地址,是否用了多重签名,因为这只是商家在支取这笔款项时需要考虑的事情。
P2SH还实现了效率上的提升:矿工的工作是追踪那些还没有被消费掉的输出脚本。采用P2SH的输出脚本会变得很小——它们只不过是个哈希值而已。所有的复杂性都被放在输入脚本中了。
读书笔记:
1,比特币后来加上了P2SH。它解决了两个重要的问题:让付款方的支付工作简单化,收款方只需告诉付款方一个哈希值即可。
2,P2SH还实现了效率上的提升:矿工的工作是追踪那些还没有被消费掉的输出脚本。
一叶之秋带你一分钟速读经典书籍,每天一分钟(只需阅读读书笔记部分),天天获新知。
一叶之秋——非著名股票分析师
CCTV证券资讯频道特邀分析师
币乎,币问内测作者;区分认证分析师
陀螺财经,币快报专栏作家
《区块链编年史》 《区块链重塑未来》系列作者
量价时空战法体系,一分钟读书俱乐部创始人
公众号:区块链项目评测
007er
作者:全职高手一叶之秋
链接:https://www.jianshu.com/p/a57b0b66adc8
共同学习,写下你的评论
评论加载中...
作者其他优质文章