public:setting_up_a_watch-only_bitcoin_wallet
This is an old revision of the document!
Table of Contents
Setting up a watch-only Bitcoin wallet
On an airgapped computer
First, set up a new wallet the usual way. Then, export the descriptors for that wallet via the following console command:
listdescriptors
Do not add true as a parameter, as that would also export your private key descriptors!
Copy the descriptors array to a removable drive. It should look similar to this (but you will probably see more):
[{
"desc”: "wpkh([66bb13d5/84'/0'/0']xpub6CtDSW4S3XVd5uYp9CgsLTZKQcKieJSmjehcvfVJBSy1rPbkKNU3T6UmZ3mn7DoSsTsM6uH8ZKem7LQh3PHyrBAtZopSvF2tonEE7foTWFe/1/*)#a9twa6j5",
"timestamp": 1647182091,
"active": true,
"internal": true,
"range": [
0,
999
],
"next": 0
},
{
"desc": "wpkh([66bb13d5/84'/0'/0']xpub6CtDSW4S3XVd5uYp9CgsLTZKQcKieJSmjehcvfVJBSy1rPbkKNU3T6UmZ3mn7DoSsTsM6uH8ZKem7LQh3PHyrBAtZopSvF2tonEE7foTWFe/0/*)#v3w0q0zv",
"timestamp": 1647182091,
"active": true,
"internal": false,
"range": [
0,
1000
],
"next": 1
}]
Note that you should only see descriptors with the key prefix xpub. If you see the prefix 'xprv' instead, you have also exported your private descriptors.
On a connected, synced computer
Create a new, blank wallet that cannot store private keys. You can do so using the GUI or with the following console command:
bitcoin-cli createwallet walletname true true
Then, import the descriptors in your wallet:
bitcoin-cli -rpcwallet="walletname" importdescriptors '[{ "desc": "<my descriptor>", "timestamp":1455191478, "internal": true }, { "desc": "<my desccriptor 2>", "label": "example 2", "timestamp": 1455191480 }]'
References
public/setting_up_a_watch-only_bitcoin_wallet.1722635939.txt.gz · Last modified: by thomas
