Hot answers tagged

28

You need to put the old wallet.dat in your bitcoin data directory. The default for Windows is: C:\Documents and Settings\YourUserName\Application data\Bitcoin (XP) C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Vista and 7) Then run the bitcoin client with the -rescan option. Alternatively you can run the bitcoin client with the -datadir=<location of ...


19

One method commonly in use is an "offline wallet." To generate an offline wallet, launch a bitcoin client on a known clean computer, virtual machine, or use a bootable Linux distribution like LinuxCoin. Make sure this system is NOT connected to the internet for this process. When the bitcoin client is first launched, it generates a brand new wallet.dat file ...


16

The file you'll need to back up is wallet.dat which can be found in %appdata%\roaming\bitcoin on Windows or ~/.bitcoin on Linux/MacOSX. By default a pool of 100 pre-generated, unused addresses is maintained in your wallet, and so it is safe to use 100 new addresses without backing up your wallet. New addresses are used most times you send bitcoins and used ...


16

The "offline wallet" method described by David Perry is a good way to securely generate a bitcoin address/wallet.dat but in order to be secure from both loss and theft the first thing you will want to do is encrypt that wallet, and then make many different copies of it. One easy way to do this is using the program TrueCrypt as explained here. To summarise ...


11

It's actually quite simple. Your wallet is a collection of private keys, each identified by an ID. When someone sends you bitcoins, those are just assigned to one of those private keys. The information about which key has how many bitcoins is stored in the bitcoin network itself, ie in the database each client has. Now if you want to use the bitcoins ...


11

By default, Bitcoin Core creates 100 addresses the first time it starts, and tries to keep 100 not-yet-used keys in wallet.dat 'keypool' (when you unlock the wallet to make a payment it will generate more). So you do not need to backup continuously. The 'getinfo' RPC command will tell you the time when the oldest not-yet-used key was generated ('...


10

A wallet is a combination of private keys, and transactions that spend from/to it. Since somewhere in the 0.3 series, bitcoin will detect transactions from a key of yours that you did not create yourself, and count them as spends. This means that if you duplicate your wallet on several machines, they will all be able to do spends, and observe spends by ...


10

This is how you obtain the private key for an Armory wallet: In Armory-Qt, click on Wallet Properties (or in the newer versions, double click on your wallet to open your Wallet Properties), then click Backup this wallet>See other backup options>Export Key Lists then click the button Export Key Lists. Enter your passphrase and Armory will show your wallet's ...


9

You can trust encryption If you encrypt anything using a strong key and a strong algorithm (e.g. GPG) then you can be sure that it will be beyond economical reach for anyone for a long time. So, the general procedure would be Encrypt wallet.dat with your long and complex passphrase (which you keep safe) Attach the ciphertext output to your email Enjoy the ...


9

You can't get your bitcoins with just the receiving address (if that could be done, they could easily be stolen), so your only chances of retrieving them are: If they're stored in the wallet file you have backed up, then you can use that Somehow recovering the original wallet file, which is a data recovery exercise. This might be possible in the case of a ...


8

I wrote a small Python script which can be used to decrypt your encrypted MyWallet. It does the same as the MyWallet JavaScript, only in Python. Edit: the code below seems to be outdated, here's a working version as of May 2012. Copy the following into a file, make it executable, then run it: #!/usr/bin/env python import base64, hashlib, hmac, json, sys, ...


8

For Mycelium, the actual file that contains the encrypted keys are in the sqlite3 file. You can see in the source code that though there is in-memory storage, it's used mostly for testing and that the main way in which Mycelium data is stored is in a sqlite3 file. Sqlite, if you aren't familiar, is a very simple relational database that contains the whole ...


8

It is important to be able to recover your private keys using only tools you fully control. That protects you against failure of infrastructure you would otherwise need to transfer your funds. There are lots of stories of corrupted backups, unreadable backups, and backups that didn't actually include the private keys. Storing your private keys unencrypted ...


7

Nmat answer is correct the absolute minimum you would need to rebuild a wallet is the private key of the address. An alternative is a deterministic wallet. What is a deterministic wallet? A deterministic wallet can use cryptographic algorithms to create (and recreate) and wallet containing multiple public/private keys from a single passphrase. A ...


7

The wallet.dat contains not just encryption keys but addresses as well. If you are using the encrypt feature from the Bitcoin client to encrypted the keys then mailed to yourself those keys in the wallet would be secure assuming you used a strong passphrase and that passphrase is not used elsewhere. But the transactions in that wallet can be viewed by ...


7

bitcoin-qt open the File menu click Backup Wallet... select a file to save the backup as MultiBit From http://multibit.org/help_backupWalletUsingPrivateKeys.html: You can export your private keys from a MultiBit wallet into a file (using the 'Tools | Export private keys' option) and, as long as you do not manually create new receiving addresses, ...


7

Knowing your private and public keys is enough to be a backup of that address. If you only have one address all you would have to do is create a new wallet and import that private key. Why backup the entire wallet.dat then? Because restoring the wallet.dat saves you the step of importing the keys from the command line. Most people find it easier to backup ...


7

Right now, that's not supported. You can try (see user2194702's answer), but if you don't know the exact workings of the wallet, you're very likely to shoot yourself in the foot. For example, Bitcoin-Qt will send change to a new address every time you create a transaction, and in general does not follow the "balance per address" concept but a "balance per ...


6

It sounds like you have an old wallet backup that does not have the private key to the public address you are looking for. You are probably in the realm of data recovery. I wrote a blog article that might help: http://gary-rowe.com/agilestack/2012/08/17/how-to-recover-your-bitcoins-from-a-failed-hard-drive/


6

Run the client with the parameter -keypool=10000 to generate 10000 keys in your keypool. Pros: Less backing up Cons: Your wallet will be bigger (file size) and take maybe a few seconds extra to load


6

The Bitcoin-Qt/bitcoind client's keypool has by default 100 Bitcoin addresses. Each spend transaction that has change chews up one of those addresses. Additionally each click on New Address will consume an address from the keypool as well. So you should be able to get by without a new backup until after 100 spend transactions plus any requests for a New ...


6

Yes. Yes. No. Note that that the software's encryption encrypts only the private keys, not transaction and address book information, so to protect your privacy you may want to add encrypting the file itself.


5

You can also use hushmail.com for emailing an encrypted wallet file to yourself for backup. It is an added layer of protection and when utilized in this way, it acts as an online wallet accessible anywhere.


5

I don't know how to do it via the command line, but you can use the tool at https://blockchain.info/DecryptWallet.html http://pastehtml.com/view/bprww2t3g.html It's basic, but its cross platform and gets the job done. You can also save it offline.


5

The upcoming Bitcoin client v0.4 will have encryption on wallet.dat if you choose to set password on wallet.


5

To answer the part about the stolen wallet, the thief would immediately transfer the balance of your stolen wallet into his own wallet, and repeat the process regularly. So whenever you added more Bitcoins to your wallet, they would vanish as the thief stole them. So you would be able to share the stolen wallet with the thief, but it would be a very ...


5

Since 0.6.0, key import/export are available in the client itself, though only through RPC. The commands are called dumpprivkey and importprivkey. For example (on testnet): $ ./bitcoind getnewaddress n2JjZgLeCUgfubswxDm9zAaBGSLLHSLdNv $ ./bitcoind dumpprivkey n2JjZgLeCUgfubswxDm9zAaBGSLLHSLdNv ...


5

Mt. Gox operates a hosted (shared) EWallet. They claim to have cold storage and perform other backup practices, but there is nothing that you as a Mt. Gox accountholder can do to "back up" those funds. And if there is a problem restricting you from accessing your Mt. Gox account, there is nothing you can do to recover those funds. If you have your own ...


5

A wallet (by default) always contains 100 unused keys. Every time the client needs a new key (for a new address, for sending change to, or - in theory - for solo mining payouts), it takes the oldest address from the pool, and creates a fresh one to add. This just means you need to backup every 100 transactions. No need to switch to a new wallet.


5

Since wallet.dat is mostly a collection of private keys, you will simply lose all private keys that you have not duplicated or copied. It also by default stores the next 100 Bitcoin addresses it will give you when you generate a new address as a safety measure. Bottom line You will lose the copy of the private keys to addresses you've created or added but ...


Only top voted, non community-wiki answers of a minimum length are eligible