Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: columbo on October 25, 2017, 08:44:26 AM



Title: Bitcoin core multi wallet
Post by: columbo on October 25, 2017, 08:44:26 AM
On the newest version of bitcoin core there is a declared support for multi wallets.
Can someone explain how does this work on a linux command line interface? I couldn't find anything explained on documentation.


Title: Re: Bitcoin core multi wallet
Post by: HCP on October 25, 2017, 12:08:19 PM
The release notes for 0.15 seem to explain it: https://bitcoin.org/en/release/v0.15.0.1#multi-wallet-support
2nd paragraph explains how to use multiple wallets:
Quote
Multi-wallet is enabled by using more than one -wallet argument when starting Bitcoin, either on the command line or in the Bitcoin config file.

Then to access a specific wallet, check the 3rd bullet point down regarding changes to RPC interface:
Quote
When running Bitcoin Core with multi-wallet, wallet-level RPC methods must specify the wallet for which they’re intended in every request. HTTP RPC requests should be send to the <RPC IP address>:<RPC port>/wallet/<wallet name>/ endpoint, for example: 127.0.0.1:8332/wallet/wallet1.dat/. bitcoin-cli commands should be run with a -rpcwallet option, for example: bitcoin-cli -rpcwallet=wallet1.dat getbalance.


Title: Re: Bitcoin core multi wallet
Post by: columbo on October 25, 2017, 12:55:14 PM
The release notes for 0.15 seem to explain it: https://bitcoin.org/en/release/v0.15.0.1#multi-wallet-support
2nd paragraph explains how to use multiple wallets:
Quote
Multi-wallet is enabled by using more than one -wallet argument when starting Bitcoin, either on the command line or in the Bitcoin config file.

Then to access a specific wallet, check the 3rd bullet point down regarding changes to RPC interface:
Quote
When running Bitcoin Core with multi-wallet, wallet-level RPC methods must specify the wallet for which they’re intended in every request. HTTP RPC requests should be send to the <RPC IP address>:<RPC port>/wallet/<wallet name>/ endpoint, for example: 127.0.0.1:8332/wallet/wallet1.dat/. bitcoin-cli commands should be run with a -rpcwallet option, for example: bitcoin-cli -rpcwallet=wallet1.dat getbalance.

Thank you. So, when starting bitcoind I simply use:
bitcoind -daemon -wallet=wallet1.dat -wallet=wallet2.dat
Right?

Then on bitcoin-cli I pass the -rpcwallet=wallet1.dat argument, right?


Title: Re: Bitcoin core multi wallet
Post by: HCP on October 25, 2017, 01:04:13 PM
Yep, that looks to be right.


Title: Re: Bitcoin core multi wallet
Post by: Spiffer on December 28, 2017, 01:30:33 PM
The release notes for 0.15 seem to explain it: https://bitcoin.org/en/release/v0.15.0.1#multi-wallet-support
2nd paragraph explains how to use multiple wallets:
Quote
Multi-wallet is enabled by using more than one -wallet argument when starting Bitcoin, either on the command line or in the Bitcoin config file.

Then to access a specific wallet, check the 3rd bullet point down regarding changes to RPC interface:
Quote
When running Bitcoin Core with multi-wallet, wallet-level RPC methods must specify the wallet for which they’re intended in every request. HTTP RPC requests should be send to the <RPC IP address>:<RPC port>/wallet/<wallet name>/ endpoint, for example: 127.0.0.1:8332/wallet/wallet1.dat/. bitcoin-cli commands should be run with a -rpcwallet option, for example: bitcoin-cli -rpcwallet=wallet1.dat getbalance.

Hi

Can I store more than one type of crypto coin on a Bitcoin core wallet? And what types of coins can I store? Or did I misunderstand what you all are talking about?

Best Regards
Ottobrøker


Title: Re: Bitcoin core multi wallet
Post by: AdolfinWolf on December 28, 2017, 01:32:15 PM
The release notes for 0.15 seem to explain it: https://bitcoin.org/en/release/v0.15.0.1#multi-wallet-support
2nd paragraph explains how to use multiple wallets:
Quote
Multi-wallet is enabled by using more than one -wallet argument when starting Bitcoin, either on the command line or in the Bitcoin config file.

Then to access a specific wallet, check the 3rd bullet point down regarding changes to RPC interface:
Quote
When running Bitcoin Core with multi-wallet, wallet-level RPC methods must specify the wallet for which they’re intended in every request. HTTP RPC requests should be send to the <RPC IP address>:<RPC port>/wallet/<wallet name>/ endpoint, for example: 127.0.0.1:8332/wallet/wallet1.dat/. bitcoin-cli commands should be run with a -rpcwallet option, for example: bitcoin-cli -rpcwallet=wallet1.dat getbalance.

Hi

Can I store more than one type of crypto coin on a Bitcoin core wallet? And what types of coins can I store? Or did I misunderstand what you all are talking about?

Best Regards
Ottobrøker

No, the multiwallet is only made for bitcoin, it simply means you can access multiple wallet.dats at once, not multiple crypto currencies.

For something like that you would need to use something like exodus https://www.exodus.io/


Title: Re: Bitcoin core multi wallet
Post by: jnano on February 16, 2018, 01:47:59 AM
Can anyone suggest an effective way to interact with multiple wallets?

The GUI only allows interacting with the first wallet, and as far as I know there's no way to switch the primary wallet without restarting.


Title: Re: Bitcoin core multi wallet
Post by: achow101 on February 16, 2018, 01:55:20 AM
Can anyone suggest an effective way to interact with multiple wallets?
Use the bitcoin-cli utility and use the JSON-RPC interface.

The GUI only allows interacting with the first wallet, and as far as I know there's no way to switch the primary wallet without restarting.
GUI support for multiwallet will hopefully be in 0.17.0.


Title: Re: Bitcoin core multi wallet
Post by: jnano on February 16, 2018, 02:18:57 AM
I meant in a GUI of some sort. Maybe a third party tool that interacts with Core through the RPC interface.

Good to know it's planned for 0.17. How come, even though it was useful to have also years ago, multi-wallet was never on the radar but started now getting more attention?






Title: Re: Bitcoin core multi wallet
Post by: achow101 on February 16, 2018, 03:47:48 AM
Good to know it's planned for 0.17. How come, even though it was useful to have also years ago, multi-wallet was never on the radar but started now getting more attention?
The way that the wallet implementation was before made it very difficult to implement multi wallet. In order to properly implement multiwallet, a lot of stuff had to first be done to decouple the wallet stuff from the rest of the software, and that requires a lot of changes and a lot of review. Only then were we able to get proper multiwallet support.


Title: Re: Bitcoin core multi wallet
Post by: jnano on February 21, 2018, 05:58:16 AM
Was there a lack of developer interest before, or was it just a lower priority feature combined with complex implementation?

And in case anyone wants to follow the development, here are good (https://github.com/bitcoin/bitcoin/projects/2) starting (https://github.com/bitcoin/bitcoin/pull/11383) points.


Title: Re: Bitcoin core multi wallet
Post by: achow101 on February 21, 2018, 06:22:44 AM
Was there a lack of developer interest before, or was it just a lower priority feature combined with complex implementation?
It was mostly a low priority feature with lots of complex stuff to do before it could work.


Title: Re: Bitcoin core multi wallet
Post by: jnano on March 28, 2018, 10:24:02 PM
Now merged:
https://github.com/bitcoin/bitcoin/commit/25cf18f239f0d812fe458435d064e522a6cab5f8