我是比特币和区块链的相对新手,希望你能帮我解决一些问题。 所以我推出了一个" regtest"网络并使用
生成101个块bitcoin-cli -regtest generate 101
现在,如果我启动了bitcoin-cli -regtest getaddressesbyaccount""',我会获得默认帐户的公开地址:
[
"mwpKJNJ4UZL7yFyj53RSVcwauGAK84UvV2"
]
当然,我现在不应该有任何其他帐户。 当我推出比特币-cli -regtest listunspent':
[
{
"txid": "694030f8638318c8c54054515ec716159edc494b14234885deb48f294b75a2fe",
"vout": 0,
"address": "n1queZpweTHjrMLvwSmcfrrJSQjsrYG3nG",
"scriptPubKey": "21038cadb266ed1ae6c474f5c1b74fc5f6790eacde843a673a16cfc924a100f2a679ac",
"amount": 50.00000000,
"confirmations": 101,
"spendable": true,
"solvable": true,
"safe": true
}
]
第一个问题: 我理解" listunspent"列出的唯一交易是UTXO, 这意味着这是我收到的地址" n1queZpweTHjrMLvwSmcfrrJSQjsrYG3nG"以50 BTC作为金额。 这个地址来自哪里?通过比特币-cli命令,我可以在钱包中看到/找到它?
第二个问题: 如何创建一个具有一些余额的新钱包并在它们之间切换(使用比特币-cli)? 基本上,我希望能够使用比特币cli测试我的应用程序 - 我需要能够创建钱包,在它们之间切换并在地址之间发送btc。
答案 0 :(得分:3)
Coinbase硬币在创建后不能转移到100个区块。
(为什么你专门生成“101”块?)
因此,您看到的钱包中的金额来自您开采的第一个区块。您可以通过bitcoin-cli -regtest getblock "<hash of first block>"
验证您返回先前运行的generate 101
命令(101个块哈希的数组)。
尝试以下
bitcoin-cli -regtest generate 1
listunspent
你应该看到2个utxos而不是1个。根据您要测试的内容,可能只是创建一个新地址并向其汇款就足够了吗?
[编辑]
-wallet
bitcoin-qt
arg来使用它们
醇>
例如,如果您使用的是Linux:
通过启动比特币核心,停止比特币核心,然后在〜/ .bitcoin 文件夹中重命名 wallet.dat (然后重复该过程)来创建4个钱包。例如,运行此过程4次以生成:
然后,在linux中,在 .bashrc :
中alias mywallet="bitcoin-qt -wallet=~/.bitcoin/mywallet.dat"
alias wifeswallet="bitcoin-qt -wallet=~/.bitcoin/wifeswallet.dat"
alias kidswallet="bitcoin-qt -wallet=~/.bitcoin/kidswallet.dat"
alias businesswallet="bitcoin-qt -wallet=~/.bitcoin/businesswallet.dat"