Commit Graph

657 Commits

Author SHA1 Message Date
Andreas Fackler 7c66ef06ee
Merge pull request #172 from poanetwork/vk-crypto-crate
crypto module moved into its own crate
2018-07-31 22:26:19 +02:00
Vladimir Komendantskiy 062b7150e1
Merge pull request #173 from poanetwork/afck-hb-clear-cs
Fix removal of terminated CS instances in HB.
2018-07-31 15:15:54 +01:00
Vladimir Komendantskiy 6753c12b7c formatting 2018-07-31 12:15:05 +01:00
Vladimir Komendantskiy 77ed1d50d4 separated crypto module into its own crate 2018-07-31 12:15:05 +01:00
Vladimir Komendantskiy 0e7055f8eb
Merge pull request #177 from poanetwork/afck-no-protobuf
Remove protobuf support.
2018-07-31 12:12:26 +01:00
Andreas Fackler 47c00016be Remove protobuf support. 2018-07-31 11:58:44 +02:00
Vladimir Komendantskiy 47ab6eb7df
Merge pull request #174 from poanetwork/afck-bin-values
Represent BinValues as a u8; rename to BoolSet.
2018-07-31 09:06:27 +01:00
Andreas Fackler c448e057f8 Rename BinValues to BoolSet. 2018-07-31 09:42:30 +02:00
Andreas Fackler 4159acf8cd Represent BinValues as a u8. 2018-07-31 09:39:51 +02:00
Andreas Fackler fa45b1fc39
Merge pull request #166 from c0gent/c0gent-error-fail
Replace `chain_error` with `failure`
2018-07-31 09:29:24 +02:00
c0gent 847a79793e
Replace `chain_error` with `failure`
Changes:

* Remove `error_chain` and convert errors to `failure` types.
* Add variants for each possible error generation point.
2018-07-30 15:14:19 -07:00
Andreas Fackler 8346085fb9 Fix removal of terminated CS instances in HB. 2018-07-30 15:02:20 +02:00
Vladimir Komendantskiy 649353b999
Merge pull request #171 from poanetwork/afck-agreement
Fix agreement bugs, and refactor a few fields.
2018-07-30 12:35:47 +01:00
Andreas Fackler 78ab9742a9 Avoid heap allocation in BinValues::into_iter. 2018-07-30 13:08:17 +02:00
Andreas Fackler 8beab3d2b4 Log duplicate agreement messages as faults. 2018-07-30 12:04:28 +02:00
Andreas Fackler 3b65f0cead Fix agreement bugs, and refactor a few fields.
* Don't drop `Term` messages from previous epochs. They are still
  relevant for all future epochs.
* Restructure some fields to avoid unnecessary iteration and counting.
* Simplify the fields related to the common coin.
* Reorder the methods, so that the message handlers are all in one
  place.
* Handle the case where the coin value arrives before the required
  number of `Conf` messages.
2018-07-30 11:44:55 +02:00
Vladimir Komendantskiy 6f530e89f9
Merge pull request #168 from poanetwork/afck-term
Make sure Term messages are handled as BVal, Aux, Conf.
2018-07-27 20:16:03 +01:00
Andreas Fackler ae252028bc
Merge pull request #169 from poanetwork/vk-term
Avoids cloning of Agreement::received_term
2018-07-27 10:19:40 +02:00
Vladimir Komendantskiy 6efe6037f2 removed duplicated insertion 2018-07-27 08:24:19 +01:00
Vladimir Komendantskiy 638cde3d71 avoid cloning of Agreement::received_term 2018-07-26 17:55:21 +01:00
Andreas Fackler 08d6abf6b4 Make sure Term messages are handled as BVal, Aux, Conf. 2018-07-26 14:19:01 +02:00
Vladimir Komendantskiy 35edde9007
Merge pull request #167 from poanetwork/afck-queue-fields
Fix bin_values change handling in agreement.
2018-07-26 09:30:03 +01:00
Andreas Fackler cc28f8ecfe
Merge pull request #162 from poanetwork/vk-broadcast-example
Updated the Broadcast doc example to the latest API
2018-07-26 10:17:56 +02:00
Andreas Fackler 4bff2849f9 Fix bin_values change handling in agreement.
* Call `on_bin_values_changed` even if there is only one value.
* Handle the case _f = 0_ correctly: `count_bval` can be equal to both
  _f + 1_ and _2 f + 1_.
2018-07-26 09:34:34 +02:00
Andreas Fackler 27898168e2
Merge pull request #163 from poanetwork/afck-queue-fields
Remove queue fields from Agreement, CommonCoin, Broadcast and CommonSubset.
2018-07-26 08:43:07 +02:00
Andreas Fackler 8d449eceb5
Merge pull request #159 from poanetwork/afck-into-fr
Accept more types in threshold crypto API.
2018-07-26 08:31:54 +02:00
Vladimir Komendantskiy fc074d50e5 removed expect and unnecessary message cloning, added comments 2018-07-25 16:53:15 +01:00
Andreas Fackler 72ff36f2b9 Fix data shard count in Broadcast. 2018-07-25 10:46:39 +02:00
Andreas Fackler 2b904e3490 Make sure QHB always inputs a new batch after output. 2018-07-24 14:46:48 +02:00
Andreas Fackler 9d0f1b3d15 Remove output and message queue from CommonSubset. 2018-07-24 13:12:06 +02:00
Andreas Fackler 990899327e Remove output and message queue from Broadcast. 2018-07-24 12:18:09 +02:00
Vladimir Komendantskiy 883201a9b9 checking the output immediately rather than at the end 2018-07-24 11:09:15 +01:00
Andreas Fackler 30c5805446 Remove output and message queue from CommonCoin. 2018-07-24 11:57:50 +02:00
Andreas Fackler 102fa0e01d Remove output and message queue from Agreement. 2018-07-24 11:43:35 +02:00
Vladimir Komendantskiy aefb812f2a updated the Broadcast doc example to the latest API 2018-07-24 09:51:13 +01:00
Vladimir Komendantskiy c23aebffb4
Merge pull request #161 from poanetwork/afck-queue-fields
Remove output and message queue from HoneyBadger.
2018-07-23 20:38:38 +01:00
Andreas Fackler b89ad6bb5d Rename: try_output_batches. Add CS multi output error. 2018-07-23 21:36:09 +02:00
Andreas Fackler 4327744976 Remove output and message queue from HoneyBadger. 2018-07-23 18:11:45 +02:00
Andreas Fackler 32e1afc24a Add more arithmetic ops to Poly. 2018-07-23 15:56:45 +02:00
Andreas Fackler 984bb49fdc Accept more types in threshold crypto API.
This removes some unnecessary allocation and conversion by accepting
more primitive types and references as the index in threshold decryption
and signing, and as the argument to a polynomial.
2018-07-23 15:56:45 +02:00
Andreas Fackler 9d43e8df59
Merge pull request #150 from poanetwork/vk-api-messages66
Outgoing message API refactoring
2018-07-23 15:43:25 +02:00
Vladimir Komendantskiy bb8d81b451
Merge pull request #157 from poanetwork/afck-api-messages66
Handle initial QHB messages, fix DHB.
2018-07-23 12:44:17 +01:00
Andreas Fackler 432c865d4b Handle initial QHB messages, fix DHB. 2018-07-21 11:30:43 +02:00
Andreas Fackler 45eb76bf22
Merge pull request #155 from poanetwork/afck-docs
Clarify synchrony requirements in SyncKeyGen.
2018-07-21 08:46:17 +02:00
Andreas Fackler e14eb5006a Clarify synchrony requirements in SyncKeyGen. 2018-07-20 18:43:28 +02:00
Vladimir Komendantskiy a9346fa2a1 removed an accidental unused import from a merge conflict 2018-07-20 12:58:07 +01:00
Vladimir Komendantskiy bc245f2e67 added a Step for each module 2018-07-20 12:51:06 +01:00
Vladimir Komendantskiy 099fbc999e made Step depend on DistAlgorithm instead of base types 2018-07-20 12:47:19 +01:00
Vladimir Komendantskiy 17339c322c added a typedef for the Queueing HB propose result 2018-07-20 12:44:41 +01:00
Vladimir Komendantskiy ccd1a98c42 optimized function arguments and added a typedef for Simulation Step 2018-07-20 12:44:41 +01:00