Kann jemand Licht in diesen Fehler bringen? Bitcore Multisig - bad-txns-in-belowout

Code:

var utxo = new bitcore.Transaction.UnspentOutput({
  "txid" : "e0c6b736e86e8dccd63bbc27f35142b413bd991a410ef50f14cd56fa1a783a1e",
  "vout" : 0,
  "address" : "2NCAeo5p1Pg8VVupFFumCd3PYz551VAZWLJ",
  "scriptPubKey" : "OP_HASH160 20 0xcf8d0490cba6d7ca817323cf0c337fbd0a3de539 OP_EQUAL",
  "amount" : 10000000
});

var multiSigTx = new bitcore.Transaction()
    .from(utxo, pubKeys, 2)
    .to("mwFLeaw5LMAPvoz1hP6qQhHbHkHq8WxM2t", 90000)
    .fee(9000)
    .change("mwFLeaw5LMAPvoz1hP6qQhHbHkHq8WxM2t")
    .sign(privKeys);


var txSerialized = multiSigTx.serialize(true);
insight.broadcast(txSerialized, function(err, returnedTxId) {
  if (err) {
    console.log(err);
  } else {
    console.log("Sent coins, tx id is: ");
    console.log(returnedTxId);
  }
});

Ergebnis:

Transaktion vom Netzwerk abgelehnt (Code -26). Grund: 16: bad-txns-in-belowout

Können Sie die serialisierte Rohübersetzung am Ende dieser Methode angeben? Dies kann etwas mit Einheiten (Satoshis vs. volle BTC) oder der Verwendung eines nicht richtig formatierten scriptPubKey zu tun haben.

Antworten (1)

Dieser Fehler tritt auf, wenn die Transaktion versucht, mehr Satoshis zu senden, als sie ausgibt. Möglicherweise haben Sie Ihre Einheiten verwechselt (mit Satoshis anstelle von BTC oder umgekehrt).

Der Code, der den Fehler auslöst, kann hier angezeigt werden: https://github.com/bitcoin/bitcoin/blob/v0.10.2/src/main.cpp#L1462-L1465

Umstellung "amount" : 10000000auf "satoshis" : 10000000Arbeit.