Commit Graph

531 Commits

Author SHA1 Message Date
Vladimir Komendantskiy 90e468ecf6
Merge pull request #101 from poanetwork/afck-docs
Add module-level Agreement, Coin and Subset documentation.
2018-07-05 17:39:09 +01:00
Vladimir Komendantskiy 1945473740
Merge pull request #105 from andogro/ag_contributing_file_coc
Doc updates: Contributing File, Code of Conduct, README
2018-07-05 17:38:45 +01:00
Vladimir Komendantskiy 0038d3cad9
Merge pull request #96 from poanetwork/afck-hb-delay
Add a max_future_epochs option to Honey Badger.
2018-07-05 16:54:19 +01:00
Andreas Fackler c42f606644 Fix module docs. (Review comments.) 2018-07-05 17:51:55 +02:00
Marc Brinkmann 1107e54771 Show `rustfmt` version in CI to make it easier to hit the correct version in your local dev environment. 2018-07-05 17:29:04 +02:00
Andreas Fackler 6f7245f123 Prefer HB::builder over HBBuilder::new. 2018-07-05 11:47:19 +02:00
Andreas Fackler 3f53964ac4 Add max_future_epochs parameter to DynamicHoneyBadger. 2018-07-05 11:47:19 +02:00
Andreas Fackler 93ca149757 Apply rustfmt and expand HB doc comment. 2018-07-05 11:47:19 +02:00
c0gent 2408e012fe Add type to `HoneyBadgerBuilder`. 2018-07-05 11:47:19 +02:00
Andreas Fackler 1a3016d94d Add Honey Badger builder. 2018-07-05 11:47:19 +02:00
Andreas Fackler 0f92010fe4 Add a max_future_epochs option to Honey Badger.
This delays handling of messages from epochs that are too far ahead.
2018-07-05 11:47:19 +02:00
Andreas Fackler f05e087492 Improve mod docs (review comments). 2018-07-05 11:45:30 +02:00
Andreas Fackler 2a30860bb0 Add agreement module-level docs. 2018-07-05 11:45:30 +02:00
Andreas Fackler f22999a37f Move the Subset docs to the module level. 2018-07-05 11:45:30 +02:00
Andreas Fackler daab0eb564 Add coin docs, change parity computation.
This makes the signature parity computation take into account all bits,
not just the last one of each byte.
2018-07-05 11:45:30 +02:00
Andreas Fackler 6fcceb993f
Merge pull request #109 from poanetwork/mbr--rand-for-secret-key
Implement `Rand` for `SecretKey`.
2018-07-05 11:41:54 +02:00
Marc Brinkmann 60450d2c90 Reformatted using nightly rustfmt instead of stable rustfmt. 2018-07-05 10:12:57 +02:00
Marc Brinkmann 5e8b26cfc3 Implemented `Rand` for `SecretKey`. 2018-07-04 16:43:17 +02:00
Andreas Fackler fe47291709 Add recommended metadata to Cargo.toml
The Rust API guidelines recommend a set of metadata values:
https://rust-lang-nursery.github.io/api-guidelines/documentation.html#c-metadata
2018-07-04 13:00:36 +02:00
Andrew Gross 71fb0df479 add contributing section to README 2018-07-03 15:56:35 -06:00
Andrew Gross fd83776043 Add contributing file, code of conduct and update TODOs 2018-07-03 15:47:10 -06:00
Andreas Fackler 38178af124
Merge pull request #93 from poanetwork/afck-dyn-hb
Add node transaction messages to Dynamic HB.
2018-07-02 15:14:38 +02:00
Andreas Fackler a4b691fd33 Improve dynamic HB doc comments. 2018-07-02 14:25:08 +02:00
Andreas Fackler 34385746c6 Add start_epoch option and DHB builder. 2018-07-02 14:14:19 +02:00
Andreas Fackler 515bd14a23 Restart Honey Badger when DKG starts for joining validator.
That way the user can be sure that if they forward all `Target::All`
messages after the first batch mentioning a joining validator, they
don't miss any messages relevant for that joining node.
2018-07-02 14:14:19 +02:00
Andreas Fackler bbc27e8a66 Update terminology: "observers" and "validators" 2018-07-02 14:14:19 +02:00
Andreas Fackler 11149c5e66 Communicate change state in Dynamic HB, add module docs. 2018-07-02 14:14:19 +02:00
Andreas Fackler 7a0b397233 Add node transaction messages to Dynamic HB. 2018-07-02 14:14:19 +02:00
Vladimir Komendantskiy 15caa4f949
Merge pull request #98 from mbr/mbr-compile-on-stable
Remove unused feature, allowing compilation on stable again.
2018-07-01 17:41:37 +01:00
Marc Brinkmann a6c920e88e Remove unused feature, allowing compilation on stable again.
There is no evidence that [optin_builtin_traits](https://doc.rust-lang.org/beta/unstable-book/language-features/optin-builtin-traits.html) are used any longer (the keyword `auto` does not even show up in the codebase).

Removing this features allow compilation on stable Rust 1.27 and possible earlier versions.
2018-07-01 18:09:21 +02:00
Andreas Fackler fd6fefc24b
Merge pull request #95 from poanetwork/afck-docs
Move broadcast docs to module-level.
2018-06-29 17:12:00 +02:00
Andreas Fackler 33eadc94ef Apply code review comments; improve broadcast docs. 2018-06-28 21:46:51 +02:00
Andreas Fackler 824a23775d Move broadcast docs to module-level.
Also replaces the word "good" with "correct".
2018-06-28 12:49:11 +02:00
Vladimir Komendantskiy c15af3f112
Merge pull request #92 from poanetwork/afck-memoize-keys
Avoid redundant key computations.
2018-06-27 16:52:43 +01:00
Andreas Fackler 2b4f77f11c Avoid redundant key computations. 2018-06-27 14:47:05 +02:00
Vladimir Komendantskiy f7dd8347bf
Merge pull request #86 from poanetwork/afck-dyn-hb
Add DynamicHoneyBadger (part 1).
2018-06-27 11:20:20 +01:00
Andreas Fackler 7a335c9771 Remove vote_counts field from dynamic HB. 2018-06-27 11:51:56 +02:00
Andreas Fackler 74fab61dd8 Fix Dynamic HB test. 2018-06-27 11:37:05 +02:00
Andreas Fackler a2c213d0aa Replace convert_transaction with From. 2018-06-26 15:13:04 +02:00
Andreas Fackler fd8e7a5900 Add DynamicHoneyBadger. 2018-06-26 15:13:04 +02:00
Andreas Fackler 78fdf63540
Merge pull request #83 from poanetwork/afck-observer
Allow observer nodes in all algorithms.
2018-06-26 15:12:46 +02:00
Andreas Fackler 266d766887
Merge pull request #87 from poanetwork/vk-basic-honey-badger-test
Output sequence verification in HoneyBadger test
2018-06-26 15:02:30 +02:00
Andreas Fackler f202ccfeb8 Compute is_peer on NetworkInfo creation. 2018-06-26 14:52:53 +02:00
Andreas Fackler aaec3d4074 Simplify observer/peer-specific code.
Extract some methods to make the branches more readable.
2018-06-26 14:50:06 +02:00
Vladimir Komendantskiy 6ce6899ca9 added output sequence verification in HoneyBadger test 2018-06-26 12:15:30 +01:00
Andreas Fackler 2db67df325 Rename is_full_node to is_peer. 2018-06-26 10:57:44 +02:00
Andreas Fackler 2a5f9f1bfe Allow observer nodes in all algorithms.
This allows nodes to join the network without sending any messages
themselves. They can't give any input and just observe the outcome.

Closes #81
2018-06-26 09:17:12 +02:00
Andreas Fackler b3b3994ec1
Merge pull request #82 from poanetwork/vk-test-decryption-shares
An adversary sending faulty decryption shares
2018-06-26 09:06:33 +02:00
Vladimir Komendantskiy 1c9ca201d5 corrected a comment and removed a redundant mut 2018-06-25 21:18:25 +01:00
Vladimir Komendantskiy 11ec39879b created an adversary to test against faulty decryption shares 2018-06-25 19:22:08 +01:00