59bbeff1c1
Improve the block transfer logic
...
- Fix a bug where the blockchain could not be synced completely when
block transfers happened in parallel
- Sum up multiple received blocks in the log output
2026-03-22 20:41:53 +01:00
0aa58b137b
Fix a bug that prevented the blockchain to sync
...
Blocks with reveal transactions that were loaded from disk could not be
distributed to other nodes before. This prevented new nodes with an old
blockchain state from synchronizing the blockchain.
This bug has now been fixed.
2026-03-22 17:47:42 +01:00
1d3cf3e242
Log errors that occur when sending a udp packet
2026-03-22 16:12:39 +01:00
de62f95f45
Fix a race condition
2026-01-05 12:02:27 +01:00
a3b92fcc72
Document a required dependency
2025-12-14 17:46:31 +01:00
2e163f9786
Add a license
2025-12-14 00:23:06 +01:00
cbdbb79e4e
Include usage information
2025-12-13 23:56:16 +01:00
872e44e317
Implement gambling
2025-12-13 23:41:07 +01:00
fd6b5019ac
Describe the advanced blockchain that supports gambling
2025-07-04 21:21:24 +02:00
38c204cab2
Improve the wallet output formatting
2024-03-25 22:15:10 +01:00
3d239a7526
Fix a bug that caused the node to crash
2024-03-25 21:53:42 +01:00
608a57c71d
Make the wallet backwards-compatible
2024-03-25 21:28:04 +01:00
77e85886ce
Implement the wallet software
2024-03-25 20:59:32 +01:00
7037de6090
Add a missing byteorder parameter
...
(It caused an exception on Python 3.10)
2024-03-24 15:05:29 +01:00
825b07bc11
Implement the mining software
2024-03-24 13:09:29 +01:00
2f3216a0c4
Implement mining task request/response
2024-03-23 18:57:57 +01:00
56c0598d6b
Add a script to show all block messages
2024-03-20 23:00:11 +01:00
54c81810ee
Allow clients to transmit payments
2024-03-20 22:59:44 +01:00
c6394d2ca1
Implement exchange of open transactions
2024-03-20 22:23:26 +01:00
0218e34787
Do not rewrite the blockchain file at startup
2024-03-17 18:56:56 +01:00
1d627a83cb
Fix a bug during initial blockchain check
...
An invalid block in the locally stored blockchain caused
the node to crash.
2024-03-17 18:49:22 +01:00
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