Bitcoin Stack Exchange is a question and answer site for Bitcoin crypto-currency enthusiasts. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Say for an exchange that manages thousands of users, and each transaction needs a new receiving address, how much space would thier wallet(s) take.

I am assuming 100000 users and each user would have about 10000 transactions, so there are about 10^9 keys to be stored. For safety, we would say there are 10^10 keys max that may be stored.

All I need to know is the size of one key stored in the wallet.

share|improve this question
It will depend on which client (and version) you are referring to. The client will at some point (likely soon) be changing from wallet.dat (BDB) to some other storage method, which will impact the size of storage. – Stephen Gornick Nov 7 '12 at 17:46
With the current client, you'll run into performance issues with a wallet that has many thousands of addresses long before storage space begins to be a concern. That will be getting addressed with changes to the wallet database. – Stephen Gornick Nov 7 '12 at 17:48
up vote 4 down vote accepted

The bitcoinj private keys are 32 bytes long. You would also want some sort of indexing around them so that you could access them efficiently.

If you used a deterministic wallet you would only need one seed and a chain code per customer and generate the addresses as required. I think they are typically 32 or 64 bytes long.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.