Open Source JavaScript Client-Side Bitcoin Wallet Generator
Home Guide Generator App FAQs Giveaway Blog

Bitaddress: The Safest Place To Generate and Encrypt Bitcoin Wallets

Generating Bitcoin Address...
MOVE your mouse around to add some extra randomness...
OR type some random characters into this textbox
Bitcoin Address
SHARE
Private Key
SECRET

A Bitcoin wallet is as simple as a single pairing of a Bitcoin address with its corresponding Bitcoin private key. Such a wallet has been generated for you in your web browser and is displayed above.

To safeguard this wallet you must print or otherwise record the Bitcoin address and private key. It is important to make a backup copy of the private key and store it in a safe location. This site does not have knowledge of your private key. If you are familiar with PGP you can download this all-in-one HTML page and check that you have an authentic version from the author of this site by matching the SHA256 hash of this HTML with the SHA256 hash available in the signed version history document linked on the footer of this site. If you leave/refresh the site or press the "Generate New Address" button then a new private key will be generated and the previously displayed private key will not be retrievable. Your Bitcoin private key should be kept a secret. Whomever you share the private key with has access to spend all the bitcoins associated with that address. If you print your wallet then store it in a zip lock bag to keep it safe from water. Treat a paper wallet like cash.

Add funds to this wallet by instructing others to send bitcoins to your Bitcoin address.

Check your balance by going to blockchain.info or blockexplorer.com and entering your Bitcoin address.

Spend your bitcoins by going to blockchain.info and sweep the full balance of your private key into your account at their website. You can also spend your funds by downloading one of the popular bitcoin p2p clients and importing your private key to the p2p client wallet. Keep in mind when you import your single key to a bitcoin p2p client and spend funds your key will be bundled with other private keys in the p2p client wallet. When you perform a transaction your change will be sent to another bitcoin address within the p2p client wallet. You must then backup the p2p client wallet and keep it safe as your remaining bitcoins will be stored there. Satoshi advised that one should never delete a wallet.

Comma Separated Values: Index,Address,Private Key
Why should I use a Bulk Wallet to accept bitcoins on my website?
The traditional approach to accepting bitcoins on your website requires that you install the official bitcoin client daemon ("bitcoind"). Many website hosting packages don't support installing the bitcoin daemon. Also, running the bitcoin daemon on your web server means your private keys are hosted on the server and could get stolen if your web server is hacked. When using a Bulk Wallet you can upload only the bitcoin addresses and not the private keys to your web server. Then you don't have to worry about your bitcoin wallet being stolen if your web server is hacked.
How do I use a Bulk Wallet to accept bitcoins on my website?
  1. Use the Bulk Wallet tab to pre-generate a large number of bitcoin addresses (10,000+). Copy and paste the generated comma separated values (CSV) list to a secure text file on your computer. Backup the file you just created to a secure location.
  2. Import the bitcoin addresses into a database table on your web server. (Don't put the wallet/private keys on your web server, otherwise you risk hackers stealing your coins. Just the bitcoin addresses as they will be shown to customers.)
  3. Provide an option on your website's shopping cart for your customer to pay in Bitcoin. When the customer chooses to pay in Bitcoin you will then display one of the addresses from your database to the customer as his "payment address" and save it with his shopping cart order.
  4. You now need to be notified when the payment arrives. Google "bitcoin payment notification" and subscribe to at least one bitcoin payment notification service. There are various services that will notify you via Web Services, API, SMS, Email, etc. Once you receive this notification, which could be programmatically automated, you can process the customer's order. To manually check if a payment has arrived you can use Block Explorer. Replace THEADDRESSGOESHERE with the bitcoin address you are checking. It could take between 10 minutes to one hour for the transaction to be confirmed.
    http://www.blockexplorer.com/address/THEADDRESSGOESHERE

    Unconfirmed transactions can be viewed at: http://blockchain.info/
    You should see the transaction there within 30 seconds.
  5. Bitcoins will safely pile up on the block chain. Use the original wallet file you generated in step 1 to spend them.
Algorithm: SHA256(passphrase)
Bitcoin Address:
Private Key (Wallet Import Format):
Step 1 Public Key:

Copy and paste the above into the Your-Part-Public-Key field in the Vanity Pool Website.
Step 1 Private Key:
Copy and paste the above Private Key field into a text file. Ideally save to an encrypted drive. You will need this to retrieve the Bitcoin Private Key once the Pool has found your prefix.
Enter Your Part Private Key (generated in Step 1 above and previously saved):
[NOTE: this input box can accept a public key or private key]
Enter Pool Part Private Key (from Vanity Pool):
[NOTE: this input box can accept a public key or private key]
Vanity Bitcoin Address:
The above is your new address that should include your required prefix.
Vanity Public Key (HEX):
The above is the Public Key in hexadecimal format.
Vanity Private Key (WIF):
The above is the Private Key to load into your wallet.



Your Bitcoin Private Key is a unique secret number that only you know. It can be encoded in a number of different formats. Below we show the Bitcoin Address and Public Key that corresponds to your Private Key as well as your Private Key in the most popular encoding formats (WIF, WIFC, HEX, B64).

Bitcoin v0.6+ stores public keys in compressed format. The client now also supports import and export of private keys with importprivkey/dumpprivkey. The format of the exported private key is determined by whether the address was generated in an old or new wallet.
Bitcoin Address
Bitcoin Address Compressed


Public Key (130 characters [0-9A-F]):
Public Key (compressed, 66 characters [0-9A-F]):

Private Key WIF
51 characters base58, starts with a
'5'
Private Key WIF Compressed
52 characters base58, starts with a
'K' or 'L'


Private Key Hexadecimal Format (64 characters [0-9A-F]):
Private Key Base64 (44 characters):
How do I make a wallet using dice? What is B6?
An important part of creating a Bitcoin wallet is ensuring the random numbers used to create the wallet are truly random. Physical randomness is better than computer generated pseudo-randomness. The easiest way to generate physical randomness is with dice. To create a Bitcoin private key you only need one six sided die which you roll 99 times. Stopping each time to record the value of the die. When recording the values follow these rules: 1=1, 2=2, 3=3, 4=4, 5=5, 6=0. By doing this you are recording the big random number, your private key, in B6 or base 6 format. You can then enter the 99 character base 6 private key into the text field above and click View Details. You will then see the Bitcoin address associated with your private key. You should also make note of your private key in WIF format since it is more widely used.