15 votes
Accepted

Will the size of a Bitcoin Core full node be too big to run on a normal computer?

Bitcoin has to maintain some balance to be able to retain the ability to be decentralized. As you've correctly established, this is partly down to making sure that the resource requirements of fully ...
Claris's user avatar
  • 15.4k
9 votes

Why are blk*.dat files ~134200000 bytes?

The constant is called MAX_BLOCKFILE_SIZE and is set in src/validation.h. It is currently set to 0x8000000 which is 128 MiB (134,217,728 bytes). You can see where it is checked in FindBlockPos() ...
Nate Eldredge's user avatar
9 votes
Accepted

How much extra disk space does txindex=1 require?

The total extra size is around 27GB as of June 2020. You can check by looking at the size of the $DATADIR/blocks/index directory. If you copy that directory, you'll copy the index with it. Historic ...
Pieter Wuille's user avatar
8 votes
Accepted

Why is a bitcoin node pruned to 550MB taking up 10GB+?

A pruned node deletes historical block chain data it already validated. However the blocks are not the only data stored by a node. In order to be able to validate blocks a node needs to maintain a ...
Antoine Poinsot's user avatar
7 votes
Accepted

Do I need to keep all blocks when running Bitcoin Core?

Full nodes keep all blocks by default, but this is not necessary to achieve full node security. Full nodes validate the complete blockchain and enforce all consensus rules regardless of whether a full ...
Murch's user avatar
  • 74.4k
6 votes

Does every node have a whole copy of the blockchain?

To join the network, a Bitcoin full node will work its way through the network history, independently verifying the state of the network through time. So yes, each node will have downloaded and ...
chytrik's user avatar
  • 18.1k
6 votes
Accepted

Is it possible to share blockchain data between multiple nodes?

I don't think this is possible; you'd have multiple node instances trying to read/write a single data directory. This is not the intended operation, you'd likely end up with corrupt data. If you ...
chytrik's user avatar
  • 18.1k
5 votes
Accepted

Why is the Litecoin blockchain smaller than the Bitcoin one?

Up until 2017, both BTC and LTC had 1 MB block limit. When SegWit was soft-forked into both protocols, the capacity increased to a hypothetical 4 MB blockweight limit. But the limit doesn't mean ...
ecurrencyhodler's user avatar
5 votes

Bitcoin network: data-intensive or compute-intensive system?

This is probably one of those situations where any simple answer is inaccurate and misleading. For any mining node, I expect computing costs much more than storage. By a long way. For an individual ...
RedGrittyBrick's user avatar
4 votes

Do I need to keep all blocks when running Bitcoin Core?

This is called pruning. From here: Since Bitcoin-Core 0.11.0 you can prune (trim) the blockchain in Bitcoin-Qt. But not from the UI. You need to add -prune=550 to your bitcoin.conf file and ...
Geremia's user avatar
  • 4,596
4 votes
Accepted

How to save the bitcoin core (bitcoin-qt) database for later?

Ok, I think I got it. Here is a short guide based on this bitcoin wiki article. Notes: This does not concern backing up your keys. If you lost your wallet, or your keys, and you made the backup ...
talz's user avatar
  • 171
4 votes
Accepted

How can I keep my disk usage under control when regularly running the Bitcoin Core functional tests?

This was answered on Twitter by various individuals. You should remove the directory /tmp/test_common_Bitcoin Core regularly. For Martin Leitner-Ankerl this was 6GB of leftover files (leftovers only ...
Michael Folkson's user avatar
3 votes
Accepted

Full block chain on a mobile phone

There are two types of wallets: Full Node A full node client uses the peer-to-peer network to validate transactions and blocks and to relay information to other peers. To verify all transactions, ...
Monstrum's user avatar
  • 1,334
3 votes

Does Armory work with a pruned copy of the blockchain?

No, you'll need to make space for a full copy of the blockchain somewhere. AFAIK, Armory rescans the blockchain in order to build its own database only after Bitcoin Core has fully synchronized. ...
Murch's user avatar
  • 74.4k
3 votes
Accepted

Can I use Armory without having the Blockchain in my laptop?

No. Armory requires you to download the entire blockchain. You cannot use pruning either as Armory requires the entire blockchain to be present in order for it to work properly.
Ava Chow's user avatar
  • 69.9k
3 votes

How is the ledger stored on every node?

Yes. The blockchain is stored completely on a full node (unless running in pruned mode) , there are mechanisms to prune and only keep relevant data, however pruning also requires you first get the ...
Bobo's user avatar
  • 393
3 votes

How to speed up initial block chain sync using SSD without wasting space?

Yes, it is possible to load the blockchain binary data off to a bulk storage (HDD), while keeping the Index DB on performant storage (SSD). The Bitcoin Blocks are stored in the blocks subdirectory in ...
3 votes
Accepted

How do I relocate my bitcoin data in bitcoin-qt to save space?

I recommend reading about the Bitcoin Data Directory. You should also take a look at this answer: How do I specify in which directory Bitcoin blocks and other data should be stored? Basically, all ...
Jestin's user avatar
  • 8,812
3 votes
Accepted

What hardware requirements does a SPV client have?

Bandwidth - You need to receive an 80-byte header about every 10 minutes. In addition, if you want to spend, you will get SPV proofs that range about 500-1000 bytes per utxo. In other words, the ...
Jimmy Song's user avatar
  • 7,759
3 votes
Accepted

How can the compressed UTXO set be stored in just 4GB?

The sizes you give don't match the paper. I can't even find mention of the sizes you give in the paper itself. Those sizes are incredibly wrong and way too large. They seem to be for input sizes, not ...
Ava Chow's user avatar
  • 69.9k
3 votes
Accepted

Why binary trees? Is there any particular benefit to using binary trees instead of some higher radix?

Bitcoin transactions are not stored in a Merkle tree. That is just one way of representing them. The most common serialization for blocks is just: Header (prevhash, merkleroot, time, nonce, ...
Pieter Wuille's user avatar
3 votes
Accepted

Size of the `chainstate/` dir vary from node to node

The chainstate/ directory contains a LevelDB database. There is no guarantee whatsoever that two LevelDB databases with the same content are identical (or even have the same size). LevelDB internally ...
Pieter Wuille's user avatar
2 votes
Accepted

How to calculate the size of the blockchain?

du rounds up file sizes to the next multiple of your filesystem's block size. It also includes the sizes of directories. So this will give you a (slight) overestimate. You really just want to add ...
Nate Eldredge's user avatar
2 votes

How big would the transaction history be if all spent transactions were pruned?

Note that transaction history is not stored in a tree nor is there a Merkle tree for all of the transactions in the blockchain. Merkle trees are only used for constructing the merkle root in blocks ...
Ava Chow's user avatar
  • 69.9k
2 votes

Wouldn't the blockchain size become a bottleneck if all payments happened on Bitcoin?

That would indeed create a lot of data. However, there are solutions for this. First of all, as a normal consumer you don't store the blockchain anyways. Only some nodes like Bitcoin services and ...
UTF-8's user avatar
  • 3,224
2 votes

How Can the Bitcoin Wallet Blockchain Size Be So Small?

Assuming you are talking about a full node, It does indeed need to download the full blockchain, to verify it and build up a set of Unspent Transaction Outputs (UTXOs). But the thing is, once it's ...
meshcollider's user avatar
  • 11.8k
2 votes

What is the memory every node allocates locally for the Bitcoin blockchain?

Not all mining machines need to store the whole blockchain, as a miner you would normally have one or a few nodes which do that, and then just send a block template to all the actual mining machines (...
meshcollider's user avatar
  • 11.8k
2 votes

Why is the Litecoin blockchain smaller than the Bitcoin one?

You're right, for the most part, Bitcoin and Litecoin have had the same blocksize limit of 1MB. After first Litecoin and then Bitcoin activated segwit, they now again have the same blockweight limit ...
Murch's user avatar
  • 74.4k
2 votes
Accepted

How can I pick the data directory of Bitcoin Core on Windows 10?

You'll want to set the option -datadir=<path-to-your-drive> either when starting bitcoind, or in your bitcoin.conf file. If you add it to bitcoin.conf, you'll need to restart your node for the ...
chytrik's user avatar
  • 18.1k
1 vote

What if the blockchain saved space by trimming input txs on each transaction?

I see two problems here: First problem is collision, since you chose only 24 bit out of 256 bit. You'll have to use a much bigger short form to mitigate that, so the big space you saved is now a lot ...
Coding Enthusiast's user avatar

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