Commit Graph

187 Commits

Author SHA1 Message Date
Paul Hauner
26537c1184
Progress further on attestation validation 2018-09-24 18:08:48 +10:00
Paul Hauner
f9f5a9e49c
Implement error type specific to ValidatorStore 2018-09-24 18:08:00 +10:00
Paul Hauner
27743f3466
Extend tests for signature verification 2018-09-24 14:30:39 +10:00
Paul Hauner
be09fd4f29
Implement attestation signature validation and test 2018-09-24 14:16:48 +10:00
Paul Hauner
69c97745d2
Set MemoryDB to use constant DB columns
This is instead of needing to be passed them each time open() is called.
2018-09-24 14:15:59 +10:00
Paul Hauner
7f01ec7c27
Extend validator_store 2018-09-24 13:16:39 +10:00
Paul Hauner
2acf141ba3
Tidy up main.rs and attestation_validation.rs 2018-09-24 09:49:26 +10:00
Paul Hauner
67b11a394e
Add new bls-aggregates crates 2018-09-23 20:19:30 +10:00
Paul Hauner
3968aaa0e0
Derive debug for some error enum 2018-09-22 22:07:39 +10:00
Paul Hauner
75031f5e69
Progress on attestation validation 2018-09-22 22:00:11 +10:00
Paul Hauner
30bf97539c
Create unique errors for att. parent hashes 2018-09-22 21:59:44 +10:00
Paul Hauner
78de4e43e2
Add SSZ decoding for AttRec, fix length mistake 2018-09-22 15:54:25 +10:00
Paul Hauner
4d3422d332
Remove warnings, restructure validation files 2018-09-22 15:53:31 +10:00
Paul Hauner
5034089398
Merge branch 'block_processing' into validate_block 2018-09-22 12:30:23 +10:00
Paul Hauner
5c0690d39c
Merge branch 'v2.1-spec' into validate_block 2018-09-22 11:25:56 +10:00
Paul Hauner
bbf640c40d
Add progress to validate_block 2018-09-22 11:13:55 +10:00
Paul Hauner
af2ba7eebf
Fix clippy lint in MemoryDB 2018-09-22 11:13:10 +10:00
Paul Hauner
2c2d270f5c
Merge branch 'master' into validate_block 2018-09-22 08:18:43 +10:00
Paul Hauner
616cc616db
Fix some clippy lints 2018-09-22 08:17:31 +10:00
Paul Hauner
091379f011
Replace env::dir with dirs crate 2018-09-22 07:45:40 +10:00
Paul Hauner
d00d109fa6
Update as per changes to SSZ
32-byte hashes are no longer prefixed with a length sequence.
2018-09-22 07:37:25 +10:00
Paul Hauner
f0b432d81c
Add ValidatorStore 2018-09-21 18:52:03 +10:00
Paul Hauner
8cbd4f47a0
Move BlockStore test across to MemoryDB 2018-09-21 15:02:28 +10:00
Paul Hauner
e6a693b89c
Add exists() function for MemoryDB 2018-09-21 15:02:00 +10:00
Paul Hauner
76f7922929
Merge branch 'master' into validate_block 2018-09-21 14:39:02 +10:00
Paul Hauner
f80d5ff0bd
Remove create_col from ClientDB trait 2018-09-21 14:12:53 +10:00
Paul Hauner
5b177a80b9
Add comments, fix warning in MemoryDB 2018-09-21 14:08:07 +10:00
Paul Hauner
66dc073c9b
Add basic memorydb implementation 2018-09-21 14:01:48 +10:00
Paul Hauner
51c842c236
Begin basics of block validation 2018-09-21 11:14:28 +10:00
Paul Hauner
d4e6f12ded
Add basic PoW chain db store 2018-09-21 11:13:07 +10:00
Paul Hauner
1065554216
Add BlockStore basics 2018-09-20 17:36:49 +10:00
Paul Hauner
f6330ce967
Add ClientDB exists() method 2018-09-20 17:36:23 +10:00
Paul Hauner
f64b8e30a1
Update SszBlock doc comments 2018-09-20 15:24:51 +10:00
Paul Hauner
43394c074c
Remove some dangling deps causing warnings 2018-09-20 15:17:34 +10:00
Paul Hauner
a4e61541aa
Add SszBlock test to check the canonical hash 2018-09-20 13:56:44 +10:00
Paul Hauner
2beeef8153
Add doc comments to SszBlock 2018-09-20 13:52:45 +10:00
Paul Hauner
55ce4998d8
Fix SszBlock bug relating to excess ssz
If you gave SszBlock too many bytes it would hash them too.
2018-09-20 13:51:58 +10:00
Paul Hauner
7020a08b7d
Finish SszBlock, add tests 2018-09-20 13:13:07 +10:00
Paul Hauner
a1b826906a
Fix SszBlock tests 2018-09-19 17:54:14 +10:00
Paul Hauner
1dd1714444
Half update some ssz indexes for ssz_block 2018-09-19 17:15:54 +10:00
Paul Hauner
ca951d0361
Move ssz block min length into block.rs, add tests 2018-09-19 16:57:21 +10:00
Paul Hauner
d0d336c341
Update AttestationRecord fields 2018-09-19 16:55:18 +10:00
Age
048f8b6f01
slight corrections to attestation validation 2018-09-19 16:29:29 +10:00
Age
7e1819f693
add helpers - implement get_block_hash 2018-09-19 16:27:19 +10:00
Age
27581c0ff4
Implement generalised error ParameterError 2018-09-19 16:25:39 +10:00
Paul Hauner
61fddb2660
Implement basics for ssz_block 2018-09-19 16:15:05 +10:00
Paul Hauner
3dea40abe0
Add temporary (incomplete) aggsig serialization
It just sets them to 64 zeros. This needs to be fixed.
2018-09-19 16:14:31 +10:00
Paul Hauner
4d9b53478f
Add SszBlock comment 2018-09-19 15:24:06 +10:00
Paul Hauner
fe2127ea31 Update SszBlock to use new SSZ API 2018-09-19 14:52:36 +10:00
Paul Hauner
718b9ed7de Move to blake2b, start adding validate_block fn 2018-09-19 14:46:58 +10:00
Paul Hauner
6c8c4d9b1e Move state/block.rs into own mod, add SszBlock 2018-09-19 14:45:55 +10:00
Paul Hauner
693d635f8c Add canonical hash function 2018-09-19 14:45:03 +10:00
Age
815180d88c
Adds assert_error macro 2018-09-19 14:00:35 +10:00
Paul Hauner
446e8ae53e Add doc comments to the db module 2018-09-18 17:40:07 +10:00
Paul Hauner
c077e8dbb9 Use different directory for rocksdb database 2018-09-18 17:39:50 +10:00
Paul Hauner
b6197ce04d Move db traits into own file 2018-09-18 17:39:38 +10:00
Paul Hauner
9b7463f68a Update ClientDB trait 2018-09-18 15:59:44 +10:00
Paul Hauner
3876c0261a Implement get and put on ClientDB trait 2018-09-18 10:27:29 +10:00
Paul Hauner
33b1e6ddf4 Partially implemented db wrapper
Addresses issue #12
2018-09-17 17:52:32 +10:00
Age
b8ca18f87b
correct attestation warnings, add unit test 2018-09-15 23:22:05 +10:00
Age
b6f4d1c968
add initial attestation validation structure 2018-09-15 22:53:45 +10:00
Paul Hauner
513972b75c Add more plumbing for block processing 2018-09-14 15:52:49 +10:00
Paul Hauner
ffaffbcd90 Change ssz to use extend_from_slice()
This is instead of `append` which empties the source vector. This
doens't really ssem suitable for what we're doing.
2018-09-10 08:52:21 +02:00
Paul Hauner
cbaee765e3 Update ssz for Block 2018-09-10 07:51:57 +02:00
Paul Hauner
976e3a717e Add ssz for AttestationRecord 2018-09-10 07:51:44 +02:00
Paul Hauner
3399b02393 Expand sync works 2018-09-09 18:28:36 +02:00
Paul Hauner
c33d3689a7 Begin sync framework 2018-09-09 16:36:00 +02:00
Paul Hauner
b4ca8cbde8 Remove get_new_shuffling
I am not sure it is designed correctly
2018-08-31 02:20:10 +10:00
Paul Hauner
2277273caa Fix get_new_shuffling, add functioning test. 2018-08-29 16:57:25 +10:00
Paul Hauner
c1a0df8c17 Implement get_new_shuffling w/o tests 2018-08-28 17:51:57 +10:00
Paul Hauner
d57f86c9ad Add readme for shuffling 2018-08-28 17:51:23 +10:00
Paul Hauner
133769e6e5 Expose function directly in transition 2018-08-24 16:01:57 +10:00
Paul Hauner
6f08700ea0 Move shuffling mod into state/transition 2018-08-24 16:01:24 +10:00
Paul Hauner
1a00f5b429 Rename helpers -> attestation_parent_hashes 2018-08-24 15:48:43 +10:00
Paul Hauner
d0c020db9d Rename "get_signed_parent_hashes" 2018-08-24 15:41:00 +10:00
Paul Hauner
1a3da944e5 Add comment to get_signed_parent_hashes 2018-08-24 15:36:26 +10:00
Paul Hauner
4ec0de6f5e Use borrows for get_signed_parent_hases, add tests 2018-08-24 15:26:27 +10:00
Paul Hauner
859c48d5e5 Progress on parent hash selection. Add test. 2018-08-24 14:33:05 +10:00
Paul Hauner
8ba7601ab3 Add get_signed_parent_hashes (untested) 2018-08-23 18:32:18 +10:00
Paul Hauner
c4f9f927f3 Rename "state" to "chain_state" 2018-08-23 18:31:58 +10:00
Paul Hauner
fd1eea561e Move boolean_bitfield into own crate 2018-08-23 15:20:10 +10:00
Paul Hauner
9808d5c209 Clear out old state config 2018-08-23 15:12:50 +10:00
Paul Hauner
abefec8ed8 Tidy "sync" module 2018-08-23 15:11:59 +10:00
Paul Hauner
366dca710f Tidy config struct 2018-08-23 15:11:15 +10:00
Paul Hauner
121bff725e Tidy client struct 2018-08-23 15:11:02 +10:00
Paul Hauner
9689142883 Add "Client" concept and RocksDB 2018-08-16 14:17:28 +10:00
Paul Hauner
3372583c18 Rename "src/" to "lighthouse/" 2018-08-15 13:41:16 +10:00