Commit Graph

132 Commits

Author SHA1 Message Date
c0gent 0da1a2f353
Hbbft updates. 2018-12-03 13:45:26 -08:00
c0gent 5e0b48be2b
Make `Hydrabadger::secret_key` public. 2018-12-02 21:51:56 -08:00
c0gent 1d893122c4
Forward keygen message copies. 2018-11-29 04:12:31 -08:00
c0gent 7cf63d8a42
Move instance id to `WireMessage`, route user instance messages. 2018-11-29 03:59:12 -08:00
c0gent 4ad23df2a3
Allow creation of arbitrary key generation instances.
Create using `Hydrabadger::new_key_gen_instance`.
2018-11-29 03:57:36 -08:00
c0gent e3b9d50251
Create a separate keygen msg type. 2018-11-26 17:37:25 -08:00
c0gent dde01ea854
Clean up and doc. 2018-11-26 10:32:53 -08:00
c0gent 5efd4e65af
Disentangle and extract sync key gen functionality from handler and state. 2018-11-26 10:15:39 -08:00
c0gent 0a2d062955
Update tokio. 2018-11-25 10:44:51 -08:00
c0gent 796745d2a9
Move wire messaging code to `Peers`. 2018-11-19 12:43:22 -08:00
c0gent 5fab376f9b
Streamline message verification. 2018-11-19 12:10:47 -08:00
Andreas Fackler 963be89e14 Fix joining, use JoinPlan::next_epoch.
This fixes a panic because with the new `NodeChange` API,
`promote_to_validator` was also called in validators.
2018-11-19 08:07:56 -08:00
Andreas Fackler eecab4c532
Merge pull request #19 from poanetwork/afck-change
Migrate to new hbbft API: arbitrary validator set changes.
2018-11-18 10:23:25 +01:00
Andreas Fackler 5995eddc29 Migrate to new hbbft API: arbitrary validator set changes. 2018-11-18 10:20:39 +01:00
c0gent 8d88d0dd43
Clean up state discriminant methods. 2018-11-15 15:33:33 -08:00
c0gent 14adf6a43e
Consolidate state transition operations. 2018-11-15 15:29:08 -08:00
c0gent a6279c6952
Allow peer network restart, wrap `State` in `StateMachine`. 2018-11-15 15:21:33 -08:00
Andreas Fackler e4670cb951 Initialize the epoch for a joining node. 2018-11-15 06:47:15 -08:00
c0gent bcaf7aa698 Modify `WireMessages` to use peer public key. 2018-11-15 06:45:13 -08:00
Andreas Fackler 66b3cf0f47 Sign messages. 2018-11-15 06:45:13 -08:00
Andreas Fackler 51d526c51c Add voting method, some cleanups. (#13)
* Remove DistAlgorithm usage.

* Deduplicate DHB handling code.

* Add Hydrabadger::vote_for.

* Add DHB errors back into Error; they are Sync now.
2018-11-13 06:22:55 -08:00
Andreas Fackler db28cadbfa Add a no-simd feature.
There are problems with SIMD on Android. For details see:
https://github.com/darrenldl/reed-solomon-erasure/issues/28
2018-11-12 07:52:57 -08:00
Andreas Fackler 72203fe4c9 Fix some Clippy lints; migrate to new hbbft API.
This fixes the build with the modified hbbft `Step` type, and addresses
some uncontroversial Clippy warnings. Other Clippy lints are disabled.
2018-11-08 08:47:10 -08:00
Vladimir Komendantskiy 2c99344c66 don't use DistAlgorithm trait 2018-11-06 07:12:47 -08:00
Vladimir Komendantskiy fec4010ae8 using sender queue convenience methods 2018-11-06 07:12:47 -08:00
Vladimir Komendantskiy 9000b4d166 EncryptionSchedule updates and moved SenderQueue to hbbft/master 2018-11-06 07:12:47 -08:00
c0gent 3b0f9ca818 hbbft updates. 2018-11-06 07:12:47 -08:00
c0gent c20ce2bb53 Update tokio dep. 2018-11-06 07:12:47 -08:00
c0gent ee7282e3aa Integrate sender queue changes. 2018-11-06 07:12:47 -08:00
c0gent a0898ab918
Generate transactions only after each epoch has begun. 2018-11-01 08:58:47 -07:00
c0gent 41298be329
Push generated transactions together in a batch. 2018-11-01 07:16:08 -07:00
c0gent e358806491
Add 'epoch listener' registration.
Allows a 'listener' to be informed when each new epoch begins. Useful
for coordinating contribution proposal with batch output.
2018-11-01 06:52:08 -07:00
c0gent e66d708fed
Change tokio dep. source. 2018-10-29 16:35:59 -07:00
c0gent 5bce9186c0
Fix typo. 2018-10-29 16:30:36 -07:00
Andreas Fackler dd7f3fe01f Migrate to new SyncKeyGen API. 2018-10-28 09:18:25 -07:00
c0gent 440e8c2da7
Rename `push_user_contribution`. 2018-10-23 13:04:11 -07:00
c0gent a5d756d748
Add `HydrabadgerWeak`. 2018-10-23 12:00:18 -07:00
c0gent 5e4eabf787
Add `Hydrabadger::is_validator`. 2018-10-19 14:39:31 -07:00
c0gent 1898bea18c
Make `State::dhb` public, make `Hydrabadger::peers` public. 2018-10-19 14:32:54 -07:00
c0gent d1f615bd90
Make `Hydrabadger::state` public. 2018-10-17 11:09:12 -07:00
c0gent 8fe128f4b5
Add `start_epoch` to config. 2018-10-17 10:47:13 -07:00
DrPeterVanNostrand 926582cd29 Switched hbbft dependency from 'cogent/hbbft tc-overflow-fix' to 'poanetwork/hbbft master'. 2018-10-17 09:41:19 -07:00
c0gent fae65ee28d
Update tokio (Fix panic in `LengthDelimitedCodec::encode`). 2018-10-16 15:10:20 -07:00
c0gent 48becddc7a
Derive `Eq` for `StateDsct`. 2018-10-15 15:13:10 -07:00
c0gent e51b8a17c0
Use latest overflow fixes (threshold_crypto). 2018-10-15 09:39:12 -07:00
c0gent 99c66abe44
Lock more dependency versions. 2018-10-12 15:04:42 -07:00
c0gent f96ab58f0c
Updates. 2018-10-12 12:56:10 -07:00
c0gent 5927daf6fa
Hbbft updates. 2018-10-04 10:19:46 -07:00
c0gent 698bb0dffb
Rename `push_user_transaction`. 2018-10-04 09:16:46 -07:00
c0gent 83dba5f6ac
Fix bincode-bytes issue. 2018-10-04 07:08:29 -07:00