Commit Graph

20 Commits

Author SHA1 Message Date
833a300611 Fix a bug during transaction validation
Missing method call - caused an exception
2024-03-17 18:35:13 +01:00
05881a9450 Persist blocks locally in a file 2024-03-17 17:43:59 +01:00
e1fe8b0958 Reorder field in the block
Miners should choose a transaction from the network based on its reward,
not as part of the mining variability.
That's why it's a bad idea to place the transaction as last block element.

Reorder the fields to make less room for harmful mining optimization.
2024-03-17 09:54:00 +01:00
f41710c3dd Implement block transfer logic 2024-03-16 21:56:12 +01:00
44598fc030 Implement blockchain logic 2024-03-16 17:10:03 +01:00
9204f87c56 Plan the carrotcoin launch 2024-03-16 15:56:52 +01:00
53e659fc9d Fill computed fields during validation 2024-03-16 15:20:46 +01:00
c48d2d8e0d method get_block_raw 2024-03-04 18:42:17 +01:00
f57eab2e3e Create a first draft of the blockchain class 2024-02-25 16:29:05 +01:00
e041a8cb04 Describe mining messages 2024-02-25 15:26:27 +01:00
ea2d9577ae Add messages to transfer open transactions 2024-02-25 15:12:46 +01:00
ebf079ff4a Ignore invalid IPv6 addresses 2024-02-25 14:56:03 +01:00
d804c05e75 Describe block transfer and list hash messages 2024-02-25 14:32:57 +01:00
c4942dd716 Send the second last block difficulty sum
This counters a possible attack where a miner could try to replace an
already mined block with a different one that appears to be mined just
one second before.
2024-02-25 00:55:47 +01:00
bd51b5efff Fix a bug that caused a busy loop without peers 2024-02-11 22:31:43 +01:00
bc45c9d5e6 Implement the partner introduction logic 2024-02-11 22:14:19 +01:00
a5e44de6fc Implement sending of heartbeats 2024-02-11 18:27:32 +01:00
b67e01f6dc Define a first peer-to-peer network protocol version 2024-02-11 17:22:56 +01:00
c1af21b442 Describe more criteria 2024-02-11 15:08:34 +01:00
89983c8acb Define the blockchain 2024-02-10 20:32:46 +01:00