Mark Spanbroek
de854cbb5f
make Block a type dependency
2024-12-09 18:07:43 +01:00
Mark Spanbroek
aa4f390a1a
rename: validator.receive() -> validator.add()
2024-12-09 16:49:44 +01:00
Mark Spanbroek
456669248f
move block creation outside of the validator
2024-12-09 15:58:51 +01:00
Mark Spanbroek
d7fccb7323
simplify signing dependency
2024-11-27 14:29:03 +01:00
Mark Spanbroek
a8122cb27c
primary proposer for a round
2024-11-26 10:59:04 +01:00
Mark Spanbroek
ff848a20c4
avoid copying of blocks and seqs
...
speeds up performance test by a factor of 4
2024-11-25 15:47:01 +01:00
Mark Spanbroek
54edc32b41
simplify Hash dependency
2024-11-21 15:12:03 +01:00
Mark Spanbroek
7ee84f7b5c
simplify Transaction dependency
2024-11-21 14:30:40 +01:00
Mark Spanbroek
030bbf3367
serialization algorithm can be set at compile time
...
- calculate block id once
- sign hashes, not byte sequences
- simplify Transaction abstraction
2024-11-20 15:51:34 +01:00
Mark Spanbroek
6f0035c8fa
Transaction type can be set at compile time
2024-11-06 16:32:28 +01:00
Mark Spanbroek
7997ae0f65
move signing and hashing under dependencies
2024-11-06 13:55:14 +01:00
Mark Spanbroek
c600c5a2ef
combine generic types for signing and hashing
2024-11-06 13:45:37 +01:00
Mark Spanbroek
415a8fcc3f
allow validator to request missing blocks
...
- refuse proposals with unknown parent blocks
- store signed blocks in slots
- allow retrieval of signed blocks
- make indirect decision rule test more similar to
scenario from the paper
2024-10-29 12:19:20 +01:00
Mark Spanbroek
66f24cb296
separate checking of block from receiving of block
2024-10-28 12:54:36 +01:00
Mark Spanbroek
fb153b7e9f
move round-robin ordering of members to Round
2024-10-17 16:00:22 +02:00
Mark Spanbroek
c3b8429ed6
add tests for proposer slots
2024-10-16 15:08:24 +02:00
Mark Spanbroek
b50d455f7e
add tests for Committee
2024-10-03 14:53:15 +02:00
Mark Spanbroek
daa5e7dd4d
rename ProposalStatus to SlotStatus
2024-10-02 12:03:45 +02:00
Mark Spanbroek
bd930b05a0
reference committee members by index
2024-09-25 15:48:49 +02:00
Mark Spanbroek
c03cfe66d7
iterate over committed blocks
2024-09-25 11:25:20 +02:00
Mark Spanbroek
f84c01f967
move Committee to its own module
2024-09-19 10:32:39 +02:00
Mark Spanbroek
4f8c280c7b
reference blocks by author, round and hash
2024-09-18 15:41:03 +02:00
Mark Spanbroek
67f9f1e149
introduce committee with stakes
2024-09-18 14:29:00 +02:00
Mark Spanbroek
c20c1a261e
add Hashing abstraction
2024-08-21 15:07:14 +02:00
Mark Spanbroek
6766beea66
signature scheme is now determined compile time
2024-08-21 11:16:52 +02:00
Mark Spanbroek
e04dbea571
validator sign their proposals
2024-08-20 16:44:02 +02:00
Mark Spanbroek
04f336349b
validator works in rounds
2024-08-20 14:45:53 +02:00
Mark Spanbroek
1516a56ce3
identity and signatures independent of crypto algorithm
2024-08-20 14:40:02 +02:00
Mark Spanbroek
93bb47fa3f
skeleton implementation of validator
2024-08-20 10:45:49 +02:00