我正在使用比特币测试网络创建一个原始交易,但当我将原始交易推送到网络上时,它会占用我所有的余额。我是不是应该把剩下的“变化”发回给我自己?下面是我用来创建原始事务的代码:
var bitcoin = require('bitcoinjs-lib');
var keyPair = bitcoin.ECPair.fromWIF('cMvPQZiG5mLARSjxbBwMxKwzhTHaxgpTsXB6ymx7SGAeYUqF8HAT', bitcoin.networks.testnet);
var tx = new bitcoin.TransactionBuilder(bitcoin.networks.testnet);
tx.addInput('87502f792d477f0514a92486c875fa1fb631fd68c95ccf458c264155165a95c6', 1);
tx.addOutput('msWccFYm5PPCn6TNPbNEnprA4hydPGadBN', 10000);
tx.sign(0, keyPair);
console.log(tx.build().toHex());我的想法正确吗?我也必须退还我自己的剩余金额?例如,如果我的原始余额是0.00114 BTC,我会这样做:
tx.addInput('87502f792d477f0514a92486c875fa1fb631fd68c95ccf458c264155165a95c6', 1);
// senders address
tx.addOutput('ms9ySK54aEC2ykDviet9jo4GZE6GxEZMzf ', 104000);
// receivers address
tx.addOutput('msWccFYm5PPCn6TNPbNEnprA4hydPGadBN', 10000);这是正确的方式吗?
发布于 2019-05-31 21:53:47
我的想法正确吗?我也必须退还我的剩余金额?
是的,你是对的。任何没有寄到任何特定地址的资金都可以被矿工要求作为交易费。这就是交易费用的产生方式。
看看中本聪在Block 170向哈尔·芬尼进行的第一笔比特币交易。智史给哈尔送了10BTC,给他自己送回了40。由于它是如此之早,没有必要收取交易费,因为他们自己在挖掘区块。现在,如果您尝试免费发送事务,节点将拒绝该事务(最低接力费没有满足),但即使是低费用的矿工也可能选择在短期内不开采(如果有的话)。

https://stackoverflow.com/questions/56391129
复制相似问题