Andreas Fackler
Andreas Fackler
#36 adds a panic if `Lemma::index` is called on a malformed `Lemma`, i.e. one where any of its sublemmas or itself violates the requirement that `sibling_hash.is_some() == sub_lemma.is_some()`. A malformed...
I think this idea applies not only to serde, but to protobuf, too: https://github.com/SpinResearch/merkle.rs/issues/30#issuecomment-389130803 Serializing the hash algorithm as a string like `"SHA256"`, and on deserialization picking the appropriate constant...
The `HoneyBadger` tests currently contain an oddly specific "faulty shares" test: Should that be moved to `ThresholdDecrypt` tests instead? (See #400.) Apart from that, we need to ensure that the...
The fact that `Step` depends on `DistAlgorithm` is pretty inconvenient in [some places](https://github.com/poanetwork/hbbft/blob/62686afa05b76496d09cd6822b8e0c9321b39d91/src/subset/proposal_state.rs#L51). Also, any user who isn't concerned with writing something like a generalized wrapper or test framework that...
Consider adding `markdownlint` to `ci.rs` to enforce a consistent format. There are [Node.js](https://github.com/DavidAnson/markdownlint) and [Ruby](https://github.com/markdownlint/markdownlint) versions.
Using a similar mechanism like the one to negotiate validator set changes, `DynamicHoneyBadger` could also allow changing parameters like the batch size (~`max_future_epochs`~ — that doesn't have to be the...
We currently use `threshold_crypto`'s BLS keys for signing some messages in DHB, and for encrypting some fields of the `SyncKeyGen` messages. However, in many use cases, nodes already have some...
Other than in the very specific `binary_agreement_mitm`, the tests currently only use an adversary that randomly reorders messages but doesn't send any. We should add a general test where the...
The `QueueingHoneyBadger` tests seem to be pretty similar to the `HoneyBadger` ones. Let's think about whether this duplication is needed, and how we can add tests that are more specific...