首页 > 解决方案 > 比特币现金 ABC - sendrawtransaction 错误 | 代码:-26

问题描述

尝试在 regtest 模式下使用节点生成的两个地址之间进行单个签名传输。在此期间我收到以下错误->mandatory-script-verify-flag-failed (Signature must be zero for failed CHECK(MULTI)SIG operation) (code 16)

接下来是流程。

  1. createrawtransaction -> args: [ UTXO (txid,vout,scriptPubKey,amount), Receiver address, change address] ->成功
  2. signrawtransactionwithkey -> args: [Hex-Transaction (output of createrawtransaction), PrivateKey, UTXO (txid,vout,scriptPubKey,amount) ]->成功
  3. sendrawtransaction -> args: [Hex- Signed Transaction (output of signrawtransactionwithkey)]->失败

从基础研究来看,许多人建议在signrawtransactionwithkey中添加金额字段,我这样做了,即使在那之后我也遇到了同样的错误。

需要注意的是,这个错误是突然出现的,节点设置工作了几个月。这只发生在特定的 linux 机器上。主机中是否有其他因素会影响比特币现金 ABC 节点并导致此问题?

以 Regtest 模式运行的比特币现金 ABC 节点。

标签: bitcoinbitcoindbitcoin-testnet

解决方案


此错误可能是由于较旧的版本也较旧,请尝试更新核心。我在 0.20.8 中收到此错误,但后来我将节点更新为 0.21.8,它工作正常。不确定发生了什么,或者比特币核心 ABC 版本是否有任何到期。


推荐阅读