交易延展性
(Transaction Malleablility)是比特币的一个设计缺陷。简单来讲,是指当交易发起者对交易签名(sign)之后,交易ID仍然可能被改变。
发起者对交易的签名(scriptSig)位于交易的输入(vin)当中,属于交易内容的一部分。
交易ID(txid)是整个交易内容的Hash值。
这就造成了一个问题:攻击者(尤其是签名方)可以通过改变scriptSig来改变txid,而交易仍旧保持合法。例如,反转ECDSA签名过程中的S值,签名仍然合法,交易仍然能够被传播。
(Transaction Malleablility)是比特币的一个设计缺陷。简单来讲,是指当交易发起者对交易签名(sign)之后,交易ID仍然可能被改变。
发起者对交易的签名(scriptSig)位于交易的输入(vin)当中,属于交易内容的一部分。
交易ID(txid)是整个交易内容的Hash值。
这就造成了一个问题:攻击者(尤其是签名方)可以通过改变scriptSig来改变txid,而交易仍旧保持合法。例如,反转ECDSA签名过程中的S值,签名仍然合法,交易仍然能够被传播。