Big milestone reached! libbitcoin is the one of the first alternative implementations of the bitcoin protocol (along with node-bitcoin-p2p) to do full blockchain validation! Exciting milestone. It's taken me around 6 hours to download and validate the blockchain.
Here's a sample of validation times at 130k blocks in milliseconds:
112 | 22 | 97 | 316 | 0 |
38 | 407 | 1795 | 375 |
116 | 51 | 116 | 358 |
81 | 481 | 49 | 325 |
87 | 107 | 18 | 9 |
579 | 56 | 65 | 7 |
2329 | 98 | 25 | 103 |
8 | 4 | 291 | 155 |
147 | 140 | 185 | 55 |
87 | 15 | 31 | 67 |
12 | 47 | 28 | 16 |
12 | 34 | 92 | 0 |
Also I wrote a development statement for libbitcoin (also in the OP).
The Zen of libbitcoinReadability over speed.
Beauty over convenience.
Simplicity over complexity.
Architected, not hacked.
Flat, not nested.
Explicit, not implicit.
Errors should be loud.
Never is better than right now.
Now is better than never.
Be flexible and configurable.
Build houses from bricks, software from modules.
Stability is god.
Random bitcoin trivia:First transaction is in block 170
First standard transaction in block 728
The first difficulty change was at block 32256
Blocks 91842 and 91812, and, 91880 and 91722 contain the same duplicate coinbase transaction. The miners can only use that transaction once.
http://blockexplorer.com/block/00000000000a4d0a398161ffc163c503763b1f4360639393e0e4c8e300e0caechttp://blockexplorer.com/block/00000000000743f190a18c5577a3c2d2a1f610ae9601ac046a38084ccb7cd7212016 (amount of blocks for difficulty re-calculation) corresponds to exactly 2 weeks of 10 minute ideal blocks. 210k (amount of blocks for drop in mining reward) only roughly corresponds to 4 years.
There was a forced fork in the blockchain a while back around 710k blocks when someone DoS bitcoin's scripting system using an excessive number of OP_CHECKSIGs. That's why IsStandard() exists today.
Block 142312 was the first block to have a non-standard coinbase. I think this was one of luke-jr's blocks possibly since it follows his pattern of instant spend.
block 546 spends a tx within the same block: 6b0f8a73a56c04b519f1883e8aafda643ba61a30bd1439969df21bea5f4e27e2