Bitcoin Forum
May 11, 2024, 12:23:52 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Possible to symbolic link multiple profiles to shared blockchain database?  (Read 1259 times)
fluxtronic (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
February 11, 2012, 08:53:08 PM
 #1

Hello.

I am aware that bitcoin is pseudonymous and transactions can be backtraced to ones IP address. I am therefore putting in some effort to deny this possibility to become as anonymous as possible.

With that said - my strategy is to use 2 separate wallets, which will run through tor on separate identities. I will receive money on one wallet, tumble it to my second, and on a new tor identity, login to the second wallet where I will transfer to the final destination wherever that may be.

There is one issue I am experiencing though - downloading the blockchain through Tor takes FOREVER! (and is not so nice either to the other people using Tor)

I finished doing it once for my first wallet, and I am now wondering whether or not I can create a symbolic link to a central "database" folder.

From the technical aspect, I imagine something like this: I have my bitcoindatawallet1 folder & bitcoindatawallet2 folder. Inside both of these folders are a symbolic link called "database" pointing towards a central blockchain.

Considering I will -never- have both clients running at the same time (which obviously then could cause corruptions or something else weird), can this idea of mine pose any implications or security risks? Will it even work?

Another big bonus is that I would then be able to store the blockchain outside of my encrypted container, so it isn't as huge as it is now (I could then store the container on dropbox).

Thanks Smiley
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715387032
Hero Member
*
Offline Offline

Posts: 1715387032

View Profile Personal Message (Offline)

Ignore
1715387032
Reply with quote  #2

1715387032
Report to moderator
matthewh3
Legendary
*
Offline Offline

Activity: 1372
Merit: 1003



View Profile WWW
February 11, 2012, 08:55:10 PM
 #2

You could run your Bitcoin wallet through Tor to hide your IP.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 11, 2012, 08:56:16 PM
 #3

The wallet database is in the wallet.dat file and it has nothing to do with the block chain.  If you have the blockchain you can simply copy it to a second instance of the client.

Alternatively you can use one client and simply replace the wallet.dat file in the folder with the one you want to open.
fluxtronic (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
February 11, 2012, 09:01:01 PM
Last edit: February 11, 2012, 09:21:06 PM by fluxtronic
 #4

The wallet database is in the wallet.dat file and it has nothing to do with the block chain.  If you have the blockchain you can simply copy it to a second instance of the client.

Alternatively you can use one client and simply replace the wallet.dat file in the folder with the one you want to open.
Wow, I hate when the simple solution is right in front of me yet I go on thinking way too complicated for no reason -.-

But this is great... I use one client... 2 seperate wallets... Open client with wallet 1, finish business, close program, get new tor identity, replace wallet with 2nd one, open client, finish business, and I'm good!

Thanks a lot hehe

You could run your Bitcoin wallet through Tor to hide your IP.
What oO, you didn't read my post did you Tongue
fluxtronic (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
February 11, 2012, 09:05:57 PM
 #5

One final question actually, is it still safe enough to symbolic link the blockchain outside of my encrypted container?

It is so HUGE and I want to be able to store my encrypted container inside dropbox. Moving the database folder outside would solve that...

But does the %bitcoinuserdir%\database folder contain any sensitive info?

If someone were to examine the database folder I redirect to my regular harddrive, would they be able to attain any info about my wallets or transactions?

I guess I could create a second container solely for the purpose of storing the blockchain, but I would preferably like to avoid this if there is no sensitive information in that folder anyway ....
deepceleron
Legendary
*
Offline Offline

Activity: 1512
Merit: 1032



View Profile WWW
February 11, 2012, 09:29:32 PM
Last edit: February 11, 2012, 09:39:42 PM by deepceleron
 #6

You are likely to have problems with missing payments as you start one client, and it updates the blockchain and finds all the transactions for it's wallet. Then you start the other client and it updates the blockchain more, and only finds payments to it's wallet, ignoring any payments for the first wallet. You could put the command line -rescan option into the startup for each bitcoin to look for missing payments when bitcoin starts up. You definitely wouldn't want a chance of both running at the same time.

The best solution to not hit the network twice for everything is to have the second bitcoin on a different machine use the connect=192.168.1.xxx bitcoin.conf option so it only connects to the first client on your network.

The database log files can have private key data written into them. They are cleared when bitcoin shuts down, but if bitcoin is just aborted, they can remain.
fluxtronic (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
February 11, 2012, 10:35:40 PM
 #7

You are likely to have problems with missing payments as you start one client, and it updates the blockchain and finds all the transactions for it's wallet. Then you start the other client and it updates the blockchain more, and only finds payments to it's wallet, ignoring any payments for the first wallet. You could put the command line -rescan option into the startup for each bitcoin to look for missing payments when bitcoin starts up. You definitely wouldn't want a chance of both running at the same time.

The best solution to not hit the network twice for everything is to have the second bitcoin on a different machine use the connect=192.168.1.xxx bitcoin.conf option so it only connects to the first client on your network.

The database log files can have private key data written into them. They are cleared when bitcoin shuts down, but if bitcoin is just aborted, they can remain.

Thanks a lot deepceleron! Funnily enough, throughout all my research googling and learning about bitcoins, your name has popped up in many of the threads matching my search terms dating long back - you have indirectly helped me more than you think ^^

Anyway, I have a new idea for my setup, does this sound ok?

- I create 2 wallets, and back them up to my encrypted container stored on dropbox.
- I create a second encrypted container to store my datadir.
- When I want to swap between the two wallets, I ensure bitcoin.exe is completely shut down, I then proceed to delete all files in the datadir except: wallet.dat, blk0001.dat, blkindex.dat andbitcoin.conf.
- I then replace wallet.dat with the other wallet, and rerun bitcoin.exe (always with -rescan) on a new Tor identity.

I really want to avoid having a second computer or second database Smiley

Also, a hypothetical question as there is something I am unsure about in regards to the wallet.dat file: If I create an offline backup of my wallet.dat on day 1, can I restore that day1 wallet.dat 500 days later after plenty of usage of my wallet, and still be fully functional with all my bitcoins? Or do I always have to have an "up-to-date" backup of my wallet.dat?
fluxtronic (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
February 11, 2012, 10:45:30 PM
 #8

Also, a hypothetical question as there is something I am unsure about in regards to the wallet.dat file: If I create an offline backup of my wallet.dat on day 1, can I restore that wallet.dat 500 days later after plenty of usage of my wallet, and still be fully functional with all my bitcoins? Or do I always have to have an "up-to-date" backup of my wallet.dat?

Once you have the address, you can store the wallet.dat in deep storage and use the address to deposit as much as you like. You can check the balance on block explorer.

I would keep a couple backups of the wallet, of course.

Cool, thanks! I'll keep a very safe backup(s) of my wallet from day one then, and from then on not worry about the wallet.dat file bitcoin uses, as if I somehow lose it, I will always be able to use the day 1 backup.
notme
Legendary
*
Offline Offline

Activity: 1904
Merit: 1002


View Profile
February 11, 2012, 11:09:13 PM
 #9

The wallet has a keypool of 100 keys.  After you deplete those, you will be using new addresses that need backed up.

https://www.bitcoin.org/bitcoin.pdf
While no idea is perfect, some ideas are useful.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 11, 2012, 11:24:54 PM
 #10

Anyway, I have a new idea for my setup, does this sound ok?

- I create 2 wallets, and back them up to my encrypted container stored on dropbox.
- I create a second encrypted container to store my datadir.
- When I want to swap between the two wallets, I ensure bitcoin.exe is completely shut down, I then proceed to delete all files in the datadir except: wallet.dat, blk0001.dat, blkindex.dat andbitcoin.conf.
- I then replace wallet.dat with the other wallet, and rerun bitcoin.exe (always with -rescan) on a new Tor identity.

I really want to avoid having a second computer or second database Smiley

You only need to swap wallets if/when you want to spend FROM the 2nd wallet.  Remember your "coins" aren't in the wallet file.  They are in the blockchain distributed across every node in the network.  The wallet just has the private keys which lets you spend = move those coins.

Quote
Also, a hypothetical question as there is something I am unsure about in regards to the wallet.dat file: If I create an offline backup of my wallet.dat on day 1, can I restore that day1 wallet.dat 500 days later after plenty of usage of my wallet, and still be fully functional with all my bitcoins? Or do I always have to have an "up-to-date" backup of my wallet.dat?

By default the wallet contains all used keys plus the NEXT 100 keys.  The number of days is irrelivent.  However create 100 new transactions FROM the wallet which is backed up then the backup is now out of date.   Any subsequent transactions will result in coin loss.  You can increase the keypool from 100 keys to 1000 or more using -keypool=xxx command line argument.  It may take some time to generate a large number of key pairs.

The wallet uses 1 key from the keypool everytime you
a) send funds from the wallet.
b) click "new address" button in client.

As long as you periodically backup your wallet you will be fine but given storage space is soo cheap I would increase the size of the keypool.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 11, 2012, 11:26:16 PM
 #11

Cool, thanks! I'll keep a very safe backup(s) of my wallet from day one then, and from then on not worry about the wallet.dat file bitcoin uses, as if I somehow lose it, I will always be able to use the day 1 backup.

Just a warning that assumption isn't always valid.  See the post above.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!