标签: bitcoind

以下是使用Bitcoin-cli命令发送原始事务BTC的方法

场景:

迈克尔从Pablo获得了0.05亿BTC,从Kuradang获得了另外0.01亿BTC.迈克尔还希望向贝腾发送0.02500000 BTC.迈克尔收到的每笔金额都有相应的txid和其他详细信息.让我们使用listunspent命令检查出来,然后使用命令创建一个原始事务,然后使用createrawtransaction它来 signrawtransaction发送原始事务 sendrawtransaction.

鉴于:

  • 迈克尔的比特币地址:mkrzDhhZtzQm8zgckSs4fMNrvtNJ66zaFe
  • Berteng的比特币地址:mxh3H416KCRoBDiweSESew5YJyAk1nxLrN
  • 发送至Berteng:0.02500000 mBTC

步骤1)

listunspent

格式:

$ bitcoin-cli listunspent [misconf=1] [max_number_confirmation=99999999] '''["<wallet_address>"]'''
Run Code Online (Sandbox Code Playgroud)

让我们检查迈克尔未使用的地址列表.

执行:

$ bitcoin-cli listunspent 1 99999999 '''["mkrzDhhZtzQm8zgckSs4fMNrvtNJ66zaFe"]'''
Run Code Online (Sandbox Code Playgroud)

结果:

[{
    "txid": "12b8e7ede4992f4d30f93idj3085746951d945e39f40becebd7c290af8c2e7ad",
    "vout": 1,
    "address": "mkrzDhhZtzQm8zgckSs4fMNrvtNJ66zaFe",
    "account": "micz",
    "scriptPubKey": "76a9143aa28e1740a6a5a2190975b6e7f1ad67aaec9a3988ac",
    "amount": 0.05000000,
    "confirmations": 94,
    "spendable": true
}, {
    "txid": "8443bc63b65d569ff9ekwm37sy3b67b9c7c6f8f386c3cdf372b260961b64ec9fc",
    "vout": 1,
    "address": "mkrzDhhZtzQm8zgckSs4fMNrvtNJ66zaFe",
    "account": "micz",
    "scriptPubKey": "76a9143aa28e1740a6a5a2190975b6e7f1ad67aaec9a3988ac",
    "amount": 0.01000000,
    "confirmations": 93,
    "spendable": true
}]
Run Code Online (Sandbox Code Playgroud)

我们在这里看到的是将50和10 mBTC分配给我们的地址mkrz的结果.... 要花费此输出,我们将创建一个新事务.

第2步)

createrawtransaction

我们需要从结果中选择一些具有足够数量的块listunspent.由于我们只需要发送0.02500000 mBTC,我认为第一个块有足够的金额来进行交易.

格式: …

transactions bitcoind bitcoin-testnet

24
推荐指数
1
解决办法
1万
查看次数

如何从比特币区块链中提取所有使用过的hash160地址

我现在拥有所有150GB比特币块?如何打开它们并用Python读取它们?到目前为止,我需要提取所有使用过的hash160

我试图用Berkeley DB打开它们,但没有成功,似乎这些文件不是Berkeley DB,blkxxxxx.dat和revxxxxx.dat文件之间有什么区别?似乎revxxxxx.dat文件的文件大小有所改善

bitcoin bitcoind blockchain

11
推荐指数
1
解决办法
4057
查看次数

使用随机对等点发现模拟私有比特币网络

我正在寻找一种在我的专用LAN/Wifi网络上模拟1000节点比特币网络的方法.

我阅读了开发人员指南:https://bitcoin.org/en/developer-examples#regtest-mode,它提到了regtest主要用于单个节点或指定节点的模式,而不是像实际网络那样的随机节点.

有些人可能会建议使用该testnet模式,但这对我没用,因为我想检查一个新的协议,因为比特币不会被testnet网络上的未知节点支持.

简单来说,我希望在我的LAN/Wifi网络中模拟一个完整的比特币网络.

bitcoin bitcoind blockchain bitcoin-testnet

10
推荐指数
1
解决办法
935
查看次数

取消比特币交易

我正在编写一个比特币应用程序并希望实现"取消"功能.所有reddit都是参考,如果发生3次确认,技术上可以停止付款.也许只有一分钟或两分钟,但仍然.我在比特币api文档中找不到任何参考来证明如何做到这一点.我知道一个山寨币使用有意的60分钟间隙来证实这个原因.

有谁知道这是怎么做的?

bitcoin bitcoind

7
推荐指数
1
解决办法
8563
查看次数

有没有办法从钱包中的特定比特币地址发送资金?

谷歌的第一个结果给了我2012年的答案,所以我想知道现在有没有比"使用军械库"更好的答案?

如果我必须解码原始交易,那很好,如果有人能带我完成这些步骤,我将不胜感激.

提前致谢 :)

send bitcoin bitcoind

6
推荐指数
1
解决办法
3569
查看次数

什么时候在比特币上发生了walletnotify事件

我已经根据https://en.bitcoin.it/wiki/Running_Bitcoin的文档在比特币守护进程上配置了事件walletnotifyblocknotify事件 ,以了解我钱包的任何变化.只执行并且永远不会执行.有人可以建议钱包上的哪个事件会触发walletnotify事件吗?blocknotifywalletnotify

目前正在运行的比特币守护程序版本:0.8.1

bitcoin.conf

rpcuser=bitcoinrpc rpcpassword=bitcoinrpc1 server=1 testnet=1 walletnotify=/home/dev/test_log/log.sh %s blocknotify=/home/dev/test_log/log.sh %s

events bitcoin bitcoind

5
推荐指数
1
解决办法
3952
查看次数

如何获得非钱包比特币地址的最后交易?

我知道我可以通过txindex=1在我的bitcoin.conf文件中设置并重新启动bitcoind 重建我的块索引,-reindex以便我可以使用以下方法查看非钱包事务:

bitcoind getrawtransaction a93a668d9332e21d51380c7251bbf5ad47295ca9795e0ad6f2fe8d63b76af9aa 1
Run Code Online (Sandbox Code Playgroud)

我目前处于另一种情况,但我只收到收件人地址.所以我的问题是,我是否可以列出某个地址收到的所有交易,最好包括此交易所获得的确认?

欢迎所有提示!

transactions confirmation bitcoin bitcoind

5
推荐指数
0
解决办法
1308
查看次数

列出bitcoind中给定地址的事务

无论如何使用API​​ RPC到bitcoind列出来自给定地址的所有事务?实际上,我正在使用btcd,大多数非钱包功能与bitcoind相同,但我找不到任何方法来做到这一点.

bitcoin bitcoind

5
推荐指数
2
解决办法
6952
查看次数

无法发送原始交易:mandatory-script-verify-flag-failed

当我发送原始交易时,出现错误:

16: mandatory-script-verify-flag-failed (Signature must be zero for failed CHECK(MULTI)SIG operation)
Run Code Online (Sandbox Code Playgroud)

我发送的原始交易:

0200000001d18e181dc31f713573785c4434b70c415b407e200959f10d24a5eee72a4bae3401000000da00473044022038b7aaf811db578a0b62b1ff69f7b2a6054cd9b770275b292ff63bb6b6faa96902202ffa91a950c8976722284a0bcd3ad9c54e11e441f9f632c3dd76f9174f1d0c0a01483045022100a3c48312f94652269b6e23b3e48ead21b788a2d162205d9ba4c01c9cddfc9ea70220772828f03307eaf90cc17f12f2f97e8424ff5f5311839b4095f775813cb2dada014752210283910b39cc9fab5ca7ad622dbe4a09e13ce53232b8695f96315c6e90c64c526e2103e88f91c7e130cc2f760d82b8135af8ec493860b0943649c65e0daf8b3b5a945552aeffffffff01962af4050000000017a9146fb7855fc9f0fcad63dacb27103f3ee6089b65408700000000
Run Code Online (Sandbox Code Playgroud)

这个原始交易解码:

{
  "txid": "e63230d2b56bec46ab1273f0962f0fce43248fb1acbd7214be5a319b53fc170e",
  "hash": "e63230d2b56bec46ab1273f0962f0fce43248fb1acbd7214be5a319b53fc170e",
  "version": 2,
  "size": 301,
  "vsize": 301,
  "locktime": 0,
  "vin": [
    {
      "txid": "34ae4b2ae7eea5240df15909207e405b410cb734445c787335711fc31d188ed1",
      "vout": 1,
      "scriptSig": {
        "asm": "0 3044022038b7aaf811db578a0b62b1ff69f7b2a6054cd9b770275b292ff63bb6b6faa96902202ffa91a950c8976722284a0bcd3ad9c54e11e441f9f632c3dd76f9174f1d0c0a[ALL] 3045022100a3c48312f94652269b6e23b3e48ead21b788a2d162205d9ba4c01c9cddfc9ea70220772828f03307eaf90cc17f12f2f97e8424ff5f5311839b4095f775813cb2dada[ALL] 52210283910b39cc9fab5ca7ad622dbe4a09e13ce53232b8695f96315c6e90c64c526e2103e88f91c7e130cc2f760d82b8135af8ec493860b0943649c65e0daf8b3b5a945552ae",
        "hex": "00473044022038b7aaf811db578a0b62b1ff69f7b2a6054cd9b770275b292ff63bb6b6faa96902202ffa91a950c8976722284a0bcd3ad9c54e11e441f9f632c3dd76f9174f1d0c0a01483045022100a3c48312f94652269b6e23b3e48ead21b788a2d162205d9ba4c01c9cddfc9ea70220772828f03307eaf90cc17f12f2f97e8424ff5f5311839b4095f775813cb2dada014752210283910b39cc9fab5ca7ad622dbe4a09e13ce53232b8695f96315c6e90c64c526e2103e88f91c7e130cc2f760d82b8135af8ec493860b0943649c65e0daf8b3b5a945552ae"
      },
      "sequence": 4294967295
    }
  ],
  "vout": [
    {
      "value": 0.99887766,
      "n": 0,
      "scriptPubKey": {
        "asm": "OP_HASH160 6fb7855fc9f0fcad63dacb27103f3ee6089b6540 OP_EQUAL",
        "hex": "a9146fb7855fc9f0fcad63dacb27103f3ee6089b654087",
        "reqSigs": 1,
        "type": "scripthash",
        "addresses": [
          "2N3RvqqdX1ou9brMRThsr9hdJpHXPkDGXt9"
        ]
      }
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

原始交易尝试花费的 UTX:

34ae4b2ae7eea5240df15909207e405b410cb734445c787335711fc31d188ed1
Run Code Online (Sandbox Code Playgroud)

UTX pubKey …

transactions bitcoind

5
推荐指数
0
解决办法
1800
查看次数

比特币 RPC 身份验证问题 - regtest

我目前正在开发一个比特币应用程序,其中涉及运行完整的比特币节点。

当我测试我的源代码时,我决定使用比特币注册测试模式。

这就是我启动比特币节点的方式:

./bitcoind -regtest -rpcuser=a -rpcpassword=b -server -bind=0.0.0.0
Run Code Online (Sandbox Code Playgroud)

这就是我与 regtest 节点交互的方式:

./bitcoin-cli -regtest -rpcuser=a -rpcpassword=b getnewaddress
Run Code Online (Sandbox Code Playgroud)

输出:

2N152jpoD9u52cpswsN7ih8RZ3P4DszaUGg
Run Code Online (Sandbox Code Playgroud)

这个例子按预期工作......但是!

一旦我尝试不使用bitcoin-cli,而是使用curl或python与比特币节点交互,我就会陷入困境:

curl --user a --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnewaddress", "params": [] }' -H 'content-type: text/plain;' http://192.168.178.200:18444/
Run Code Online (Sandbox Code Playgroud)

我被要求输入密码 => 我输入b

然后它说:

curl: (52) Empty reply from server
Run Code Online (Sandbox Code Playgroud)

同样适用于:

curl --user a:b --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnewaddress", "params": [] }' -H 'content-type: text/plain;' http://192.168.178.200:18444/
Run Code Online (Sandbox Code Playgroud)

和:

curl --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnewaddress", "params": [] }' -H 'content-type: …
Run Code Online (Sandbox Code Playgroud)

authentication rpc json bitcoin bitcoind

5
推荐指数
1
解决办法
1612
查看次数