Bitcoin Forum
December 08, 2016, 10:31:40 PM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: [Feature request] Loading different wallets on the fly  (Read 565 times)
goodlord666
Sr. Member
****
Offline Offline

Activity: 434


100%


View Profile
September 09, 2011, 02:10:16 PM
 #1

Hello, searching the archives I didn't find a thread that covered this, so I may be the first to suggest this:


An easy to use feature in the client that allows you to load different wallets that you've created for different businesses or purposes.

You click on a button "Load wallet file" > It asks you "Do you want to create a backup of the wallet currently in use (recommended for most users)?" > Yes/No > You pick any wallet file from your storage device > The client briefly disconnects from the network, replaces the previous wallet with the new one, reconnects to the network.

The above is the simple solution, ideally you would want it to do this:

Instead of replacing wallet.dat with another wallet.dat and requiring backups before replacing, it would directly access any given wallet file in a given location and write to it directly (when creating new addresses, for instance).

This eliminates having to rename and move wallet files around folders and you could store them in a centralized folder somewhere or in multiple locations.

I want to be able to give my wallet files individual names, such as BusinessA_last_backup_01-01-2012 or BusinessB_last_backup_02_02_2012. Pick one of them from the folder and have the client load it. Also, the client could offer me to name my wallet file upon creation and ask what location to save it in. The client would have to remember where it accessed the last wallet from.

As a bonus, I'd find it cool if we could introduce a wallet file extension other than .dat. My suggestion: .btc


Let me know if I missed anything there.



1481236300
Hero Member
*
Offline Offline

Posts: 1481236300

View Profile Personal Message (Offline)

Ignore
1481236300
Reply with quote  #2

1481236300
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
2112
Legendary
*
Offline Offline

Activity: 1708



View Profile
September 09, 2011, 04:31:02 PM
 #2

Yeah, you've missed chain reorganization / rollback / chargeback. Pretty much like anybody else who tries to modify the Satoshi client without understanding of the Satoshi whitepaper.

Loading a new wallet requires a rescan of the block-chain.

Theoretically, wallet.dat could be modified to store the hash coordinate of the tip of the block-chain when it gets "unloaded". Then upon "loading" instead of the full rescan the code could do a partial rescan "up the chain" (or "down and then up the chain" in case of the reorganization).

The amount of coding to do it properly is significantly nontrivial. About the same order of magnitude as developing a properly architectured split "bitcoind" & "bitcoinui".

Please comment, critique, criticize or ridicule BIP 2112: https://bitcointalk.org/index.php?topic=54382.0
Long-term mining prognosis: https://bitcointalk.org/index.php?topic=91101.0
wumpus
Hero Member
*****
qt
Offline Offline

Activity: 798

No Maps for These Territories


View Profile
September 11, 2011, 08:14:33 AM
 #3

An easy to use feature in the client that allows you to load different wallets that you've created for different businesses or purposes.
The groundwork for supporting multiple loaded wallets is already there (multiple CWallet objects).

Quote
You click on a button "Load wallet file" > It asks you "Do you want to create a backup of the wallet currently in use (recommended for most users)?" > Yes/No > You pick any wallet file from your storage device > The client briefly disconnects from the network, replaces the previous wallet with the new one, reconnects to the network.

Disconnecting you from the network is not even needed as the network code is not dependent on wallets; however you do need a rescan through the block chain (as 2112 mentions) to pick up new transactions "owned" by the wallet.

I've proposed this feature for the qt client once when asking what to do next, but there were not too many people interested, so it's currently at very low priority.


Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
goodlord666
Sr. Member
****
Offline Offline

Activity: 434


100%


View Profile
September 12, 2011, 09:30:06 PM
 #4

An easy to use feature in the client that allows you to load different wallets that you've created for different businesses or purposes.
The groundwork for supporting multiple loaded wallets is already there (multiple CWallet objects).

Quote
You click on a button "Load wallet file" > It asks you "Do you want to create a backup of the wallet currently in use (recommended for most users)?" > Yes/No > You pick any wallet file from your storage device > The client briefly disconnects from the network, replaces the previous wallet with the new one, reconnects to the network.

Disconnecting you from the network is not even needed as the network code is not dependent on wallets; however you do need a rescan through the block chain (as 2112 mentions) to pick up new transactions "owned" by the wallet.

I've proposed this feature for the qt client once when asking what to do next, but there were not too many people interested, so it's currently at very low priority.




Thanks for your efforts. I'll just wait for what comes around then.


Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!