<p>Validating hashes and signatures for transactions is the most costly process. So the amount of time it takes for CPU to verify a block depends on number of transactions in the block. </p>

<p>Number of transactions per block tends to increase as bitcoin economy grows, therefore it takes longer to verify more recent blocks. </p>

CC BY-SA 3.0
2011-11-27T23:09:25.387Z
+1 Is it just the cryptography or is there also the cost of tracking down the ancestry of the transactions in the block (to see if the amounts are valid)? But I suppose that there a single step back would be sufficient, since any previous blocks have already been validated.
Thilo
CC BY-SA 3.0
2011-11-27T23:11:17.040Z
Thilo: exactly, it must a) verify syntactic integrity of the transactions b) find the previous outputs it references (one level deep) c) verify those previous outputs haven't been spent d) verify the signatures. b) and c) require disk seeks, d) requires CPU
Pieter Wuille
CC BY-SA 3.0
2011-11-27T23:33:12.353Z
Is step c) dependent on the age of the previous output (i.e. the block chain length) because a sequential search takes place or does the Bitcoin client maintain an index of spent outputs?
Thilo
CC BY-SA 3.0
2011-11-27T12:34:17.437Z
2011-11-27T12:47:22.767Z
2011-11-27T12:47:22.767Z
Serith
<p>There are just more transactions per block. The cost of verifying a block doesn't depend on previous blocks at all.</p>

CC BY-SA 3.0
2011-11-27T19:50:36.590Z
2011-11-27T19:50:36.590Z
theymos
<p>I just downloaded Bitcoin 0.5 and started downloading the blockchain from scratch. The process was rather fast early on but slowed down noticeably later. That could of course be related to network conditions (or I could be mistaken altogether), but it got me thinking if the cost of block validation (which <a href="https://bitcoin.stackexchange.com/q/800/238">apparently</a> is the driving factor in determining how long importing new blocks takes) somehow depends on the length of the chain before it?</p>

<blockchain>
Does block validation get more difficult as the blockchain grows?
Thilo
# Does block validation get more difficult as the blockchain grows?

(Asked by: username_0 on 2011-11-27)

I just downloaded Bitcoin 0.5 and started downloading the blockchain from scratch. The process was rather fast early on but slowed down noticeably later. That could of course be related to network conditions (or I could be mistaken altogether), but it got me thinking if the cost of block validation (which [apparently](https://bitcoin.stackexchange.com/q/800/238) is the driving factor in determining how long importing new blocks takes) somehow depends on the length of the chain before it?

**Tags:** blockchain


---

## 2 answers

### Answer by username_1 on 2011-11-27. Score: 12

Validating hashes and signatures for transactions is the most costly process. So the amount of time it takes for CPU to verify a block depends on number of transactions in the block.

Number of transactions per block tends to increase as bitcoin economy grows, therefore it takes longer to verify more recent blocks.

> **Comments:**
> **username_0**: +1 Is it just the cryptography or is there also the cost of tracking down the ancestry of the transactions in the block (to see if the amounts are valid)? But I suppose that there a single step back would be sufficient, since any previous blocks have already been validated.  
> **username_2**: username_0: exactly, it must a) verify syntactic integrity of the transactions b) find the previous outputs it references (one level deep) c) verify those previous outputs haven't been spent d) verify the signatures. b) and c) require disk seeks, d) requires CPU  
> **username_0**: Is step c) dependent on the age of the previous output (i.e. the block chain length) because a sequential search takes place or does the Bitcoin client maintain an index of spent outputs?  

---

### Answer by username_3 on 2011-11-27. Score: 4

There are just more transactions per block. The cost of verifying a block doesn't depend on previous blocks at all.


---

