/simpleblockchain

Simple blockchain implementation in Kotlin

Primary LanguageKotlin

Simple Blockchain Example

This is my simple blockchain example with a configurable complexity.

Output:

 ## Blockchain with mining complexity of 3
 -----------------------------------------
 
 Block 0: Block(hash=ec65b5fa378812f6dc1d451d81f53039311a541d845d470944aa54a505aa926f, nonce=genesis, data=Genesis block, previousBlockHash=, timestamp=2019-02-28T22:18:33.216118)
 Block 1: Block(hash=000cfd7bc636b90444112a2a434b9f766c2b15183484506a88c3f0f691195095, nonce=253, data=Hello World, previousBlockHash=ec65b5fa378812f6dc1d451d81f53039311a541d845d470944aa54a505aa926f, timestamp=2019-02-28T22:18:33.221781)
 Block 2: Block(hash=000d81380259d70f3c51f3f6d2bf2fac5fb05a4dc433240234173be00abfeb43, nonce=1503, data=Give me some beer, previousBlockHash=000cfd7bc636b90444112a2a434b9f766c2b15183484506a88c3f0f691195095, timestamp=2019-02-28T22:18:33.261860)
 Block 3: Block(hash=00036e1dcbc9ec1162d874a9b19ea5c28183600a8765cacd5f9b171ca604222f, nonce=2420, data=Ajax Amsterdam, previousBlockHash=000d81380259d70f3c51f3f6d2bf2fac5fb05a4dc433240234173be00abfeb43, timestamp=2019-02-28T22:18:33.324606)
 Block 4: Block(hash=0002417d4555e0d5f3231a76ce0f8b542fda57fc1898ddf3aaa1d96eceee38fd, nonce=5565, data=Love programming, previousBlockHash=00036e1dcbc9ec1162d874a9b19ea5c28183600a8765cacd5f9b171ca604222f, timestamp=2019-02-28T22:18:33.364062)
 
 -----------------------------------------
 
 
 ## Blockchain with mining complexity of 5
 -----------------------------------------
 
 Block 0: Block(hash=eee993851b920345648d87f928eb4f62a68da313bf3ccfad65725c8b704a2d51, nonce=genesis, data=Genesis block, previousBlockHash=, timestamp=2019-02-28T22:18:33.417485)
 Block 1: Block(hash=00000cc838b0ad4059cfa5e3990a5f5abcf54ccae75a67fbd6ac7dff77834f49, nonce=588395, data=Hello World, previousBlockHash=eee993851b920345648d87f928eb4f62a68da313bf3ccfad65725c8b704a2d51, timestamp=2019-02-28T22:18:33.417535)
 Block 2: Block(hash=00000cc76e354edb801933e6bdc291380f98f38ff5c82620c2c9991872733044, nonce=1840666, data=Give me some beer, previousBlockHash=00000cc838b0ad4059cfa5e3990a5f5abcf54ccae75a67fbd6ac7dff77834f49, timestamp=2019-02-28T22:18:35.421776)
 Block 3: Block(hash=000009c69e4a2377869d67b479fa15e36ff845e3e078629552176a7b3f4bbe33, nonce=104835, data=Ajax Amsterdam, previousBlockHash=00000cc76e354edb801933e6bdc291380f98f38ff5c82620c2c9991872733044, timestamp=2019-02-28T22:18:40.209997)
 Block 4: Block(hash=00000993e0248fcce333bbfd07b6da951028fa964dbadcb76e4ce519621cad24, nonce=3038623, data=Love programming, previousBlockHash=000009c69e4a2377869d67b479fa15e36ff845e3e078629552176a7b3f4bbe33, timestamp=2019-02-28T22:18:40.474349)
 
 -----------------------------------------