比特币改进提议
简介
比特币改进提议(BIP)描述了Bitcoin脚本系统的新“标准”交易类型,并定义了仅适用于新交易的其他验证规则 。
目的
pay-to-script-hash目的是将提供条件的责任从资金发送者转移到接收方。
好处是允许发送者发起无论多复杂的交易,使用足够短的20字节固定长度的散列来扫描QR码或轻松地复制和粘贴 。
详细说明
定义了一个包含在采矿区块中的新标准交易类型:
OP_HASH160 [20-byte-hash-value] OP_EQUAL
[20-byte-hash-value]应为推20字节到堆栈操作码(0x14),后跟20个字节。
这个新的交易类型被标准脚本代码赎回:
signatures… {serialized script}
如果序列化脚本(也称为redeemScript)本身就是其他标准交易类型之一,那么兑换这些pay-to-script outpoints的交易只能被视为标准。
传播交易或将其纳入新区块时对这些outpoints进行验证的规则如下:
如果scriptSig(解锁脚本)中存在除“push data”以外的任何操作,验证失败。
正常验证完成:从签名和{序列化脚本}创建初始堆栈,并且计算脚本的哈希值,如果它与outpoint的哈希不匹配,则验证失败。
{serialized script}从初始堆栈弹出,并使用弹出的堆栈和反序列化脚本作为scriptPubKey再次验证交易。
这些新规则只应在使用时间戳=> 1333238400(2012年4月1日)[1]的区块中验证交易时应用。
在区块链中早于1333238400个的交易,应用这些新的验证规则会失败。 [2]。较旧的交易必须根据旧规则进行验证。 (有关详细信息,请参阅向后兼容性部分)。