Commit Graph

92 Commits

Author SHA1 Message Date
Arkadiy Paronyan
e6a31e7543 EIP-210 BLOCKHASH changes (#5505)
* EIP-210

* comment
2017-05-30 11:52:33 +02:00
Robert Habermeier
4c5e4ac8da PoA warp implementation (#5488)
* separate modules for consensus snapshot chunks

* bulk of authority warp logic

* finish authority warp implementation

* squash warnings and enable authority snapshot mode

* test harness for PoA

* fiddle with harness

* epoch generation proof fixes

* update constructor code

* store epoch transition proof after block commit

* basic snap and restore test

* use keyvaluedb in state restoration

* decompress chunks

* fix encoding issues

* fixed-to-contract-to-contract test

* implement ancient block import

* restore genesis transition in PoW snapshot

* add format version method to snapshot components

* supported version numbers in snapshot_components

* allow returning of ancient epoch transitions

* genesis hash mismatch check

* remove commented code
2017-05-17 12:41:33 +02:00
Robert Habermeier
56768ff237 only try to warp when engine supports it 2017-05-10 17:12:00 +02:00
Arkadiy Paronyan
ed7c366b90 EIP-86 fixes (#5506) 2017-05-05 15:00:40 +01:00
Robert Habermeier
6652df03df Merge branch 'master' into aura-contract-warp 2017-04-19 20:43:24 +02:00
Robert Habermeier
2ec3397b7d snapshot chunk and restore traits 2017-04-19 20:31:53 +02:00
Robert Habermeier
a278dd5a0a store epoch transition proofs in DB 2017-04-19 14:58:19 +02:00
Arkadiy Paronyan
b50fb71dd1 EIP-86 (#4697)
* EIP-86

* Disable EIP-86 auto activation for now
2017-04-19 14:30:00 +02:00
Robert Habermeier
f6f9816ef4 epoch verifier rename 2017-04-18 14:19:10 +02:00
Robert Habermeier
715d5daafe ChainVerifier for memoizing validator sets 2017-04-13 20:24:21 +02:00
Robert Habermeier
34a1512ff0 skeleton for proof checking 2017-04-12 18:55:38 +02:00
Robert Habermeier
2d8a8bd3e5 engine changes 2017-04-12 14:41:19 +02:00
Robert Habermeier
7723d6281b starting memoized validatorset 2017-04-12 12:46:25 +02:00
Robert Habermeier
a254b2098f more useful Engine::verify_seal 2017-04-11 17:07:04 +02:00
keorn
2398311455 add eip155 validation (#5346) 2017-03-30 20:01:19 +02:00
Robert Habermeier
797a3e1cd9 EIP198 and built-in activation (#4926)
* EIP198 and built-in activation

* address review
2017-03-21 19:36:38 +03:00
keorn
a84a10ff03 Add replay protection (#4808)
* add eip155

* make network_id default
2017-03-08 14:44:07 +01:00
keorn
ac6180a6fe seals_internally (#4613) 2017-02-20 16:35:53 +01:00
Gav Wood
8404edb656 Fix whitespace (#4299)
* Fix whitespace.

* Update copyright years/owner.

* Push release only for tags.
2017-01-25 18:51:41 +01:00
keorn
e9251a9325 Generic engine utilities (#4258)
* move modules up

* make structs generic

* reound to view and tests

* fix
2017-01-24 22:03:03 +01:00
keorn
ba0209678b ValidatorSet reporting (#4208)
* remove register_account_provider

* build rpc module

* new dummy client

* common EngineSigner struct

* from -> into

* initial report via call

* separate safe from regular contract

* transact_contract

* fix build

* return Signature, docs

* add sign method to some engines

* add safeContract spec

* update specs to new contracts

* use AuthorityRound for contract spec

* add more reporting

* add reporting test

* use gas floor

* shorter
2017-01-24 12:03:58 +03:00
keorn
b7f9b304c1 Chain scoring (#4218)
* chain scoring

* use current steps
2017-01-23 17:27:11 +03:00
keorn
97a60ceab1 Common EngineSigner (#4189)
* remove register_account_provider

* build rpc module

* new dummy client

* common EngineSigner struct

* from -> into

* return Signature, docs
2017-01-20 13:25:17 +01:00
keorn
73b80869f5 Remove unnecessary Engine method (#4184)
* remove register_account_provider

* build rpc module

* new dummy client
2017-01-18 18:49:50 +01:00
Tomasz Drwięga
e11353f94c UnverifiedTransaction type (#4134)
* Introducing ValidSignedTransaction

* Verifiying transactions in engines

* Widening use of VerifiedSignedTransaction

* Renaming Transactions

* Uncommenting banning queue & Fixing tests

* Fixing json tests

* Fixing pre-homestead test

* Fixing imports

* Addressing grumbles

* Fixing test
2017-01-13 08:51:36 +00:00
keorn
be30c44179 Validator/authority contract (#3937)
* dir

* simple validator list

* stub validator contract

* make the engine hold Weak<Client> instead of IoChannel

* validator set factory

* register weak client with ValidatorContract

* check chain security

* add address array to generator

* register provider contract

* update validator set on notify

* add validator contract spec

* simple list test

* split update and contract test

* contract change

* use client in tendermint

* fix deadlock

* step duration in params

* adapt tendermint tests

* add storage fields to test spec

* constructor spec

* execute under wrong address

* create under correct address

* revert

* validator contract constructor

* move genesis block lookup

* add removal ability to contract

* validator contract adding validators

* fix basic authority

* validator changing test

* more docs

* update sync tests

* remove env_logger

* another env_logger

* cameltoe

* hold EngineClient instead of Client

* add a comment about lock scope
2017-01-10 12:23:59 +01:00
keorn
fa504e510f Merge branch 'master' into auth-bft 2016-12-12 21:28:46 +01:00
Gav Wood
58b72c521d
Rename ethcore -> parity in licenses. 2016-12-11 19:31:31 +01:00
Robert Habermeier
9252ebf93d block: enforce gas limit falls within engine bounds 2016-12-11 12:50:48 +01:00
arkpar
c777362d02 Sync channel for consensus test 2016-12-11 12:32:01 +01:00
arkpar
97f358ced9 AuthorityRound network simulation test 2016-12-09 20:38:06 +01:00
arkpar
ca7406773f AuthorityRound network simulation test 2016-12-09 19:27:16 +01:00
keorn
56e9dab9de add Engine stop method 2016-12-09 14:52:08 +01:00
keorn
3ebfa1481d better proposal block handling 2016-12-08 12:03:34 +01:00
keorn
8f641e67f3 Merge branch 'engine-password' into auth-bft 2016-12-06 13:13:02 +00:00
keorn
81a756394a Merge branch 'master' into engine-password 2016-12-05 17:08:57 +00:00
keorn
529a7fc33c add password and AccountProvider 2016-12-05 17:08:16 +00:00
keorn
6fc943ca6d Merge branch 'master' into auth-bft 2016-12-05 16:37:35 +00:00
keorn
c61a0e97b3 make engine determine block order 2016-12-05 15:20:32 +00:00
Gav Wood
2911c549e3
Encode networkid as a u64. 2016-12-04 10:48:26 -08:00
keorn
e0f2fac441 new error type 2016-12-02 13:32:00 +00:00
keorn
34d5017950 hold password in engine, add rpc 2016-11-30 12:59:33 +00:00
keorn
294e89e5c0 use EngineError instead of BlockError 2016-11-29 12:51:27 +00:00
keorn
340d377930 Revert "dont keep account provider in miner"
This reverts commit 11ccacd6d0.
2016-11-22 16:05:27 +00:00
keorn
9d61071dd7 Merge branch 'miner-no-ap' into auth-bft 2016-11-17 22:04:07 +00:00
keorn
11ccacd6d0 dont keep account provider in miner 2016-11-17 18:32:12 +00:00
keorn
ce711e321a remove unused vote accumulators 2016-11-17 13:28:29 +00:00
keorn
9563ccfbd2 message broadcasting methods 2016-11-17 12:18:20 +00:00
keorn
8ac989cbeb Merge remote-tracking branch 'parity/master' into bft 2016-11-16 10:29:54 +00:00
keorn
d19e8c5505 Merge remote-tracking branch 'parity/master' into bft 2016-11-15 10:26:37 +00:00