Commit Graph

277 Commits

Author SHA1 Message Date
Vladimir Komendantskiy 7a4fc37628 implemented an optimistic random common coin schedule 2018-06-22 10:39:55 +01:00
Vladimir Komendantskiy e0a85a54bb
Merge pull request #68 from poanetwork/vk-encrypt-proposed
Encryption of proposals in HoneyBadger
2018-06-22 10:38:29 +01:00
Vladimir Komendantskiy 4c2e92e63d removed the obsolete Bls12 type parameters 2018-06-22 10:17:11 +01:00
Vladimir Komendantskiy 5778cedb1c removed the unneeded pending_verification 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy f2893c5f54 Revert "removed the unneeded pending_verification and added clone-less shares in messages"
This reverts commit 10c442af475ca764badede674715142a1fd06fdb.
2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy b7a0d64924 removed the unneeded pending_verification and added clone-less shares in messages 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy 69b42d5032 added verification of decryption shares as soon as they can be verified 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy 5b0d331a69 review comments 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy 5811ead460 derived instance fixes after serde option removal 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy af03158e00 tries to decrypt and output a batch on epoch update from already received messages 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy c7f4994e3a threshold encryption of proposals in HoneyBadger 2018-06-22 10:12:38 +01:00
Vladimir Komendantskiy b6f5bf1ce7
Merge pull request #70 from poanetwork/afck-sync-key-gen
Implement SyncKeyGen.
2018-06-22 10:10:15 +01:00
Andreas Fackler 67dbada49f Improve documentation. 2018-06-22 10:17:44 +02:00
Andreas Fackler e11f183db2 Remove generic E: Engine from crypto. 2018-06-22 10:08:23 +02:00
Andreas Fackler 7eb487f329 Implement SyncKeyGen.
This is a _synchronous_ key generation algorithm. We will use it in
`DynamicHoneyBadger`, on top of `HoneyBadger` to satisfy the synchrony
requirements.

It can also be used independently e.g. on top of a blockchain.
2018-06-22 10:06:29 +02:00
Andreas Fackler 58c1a7e15d
Merge pull request #74 from andogro/ag_README
README re-organization and additions
2018-06-22 10:04:02 +02:00
Andrew Gross b75ddeb195 Updated todos, modified text 2018-06-21 14:54:36 -06:00
Andreas Fackler 414cea9436
Merge pull request #73 from poanetwork/overwrite-secret-keys-on-drop
Change 'NetworkInfo' to use clear-on-drop secret-keys.
2018-06-21 21:04:38 +02:00
Peter van Nostrand 73368b7a32 Fix formatting. 2018-06-21 13:06:48 -04:00
Andrew Gross 8c07146608 README re-organization and additions 2018-06-21 11:02:05 -06:00
Peter van Nostrand 05da712c20 Added clear-on-drop secret-keys to 'NetworkInfo'. 2018-06-21 12:08:48 -04:00
Vladimir Komendantskiy 1dc5bb3154
Merge pull request #65 from poanetwork/afck-hash
Implement Hash for "public" cryptographic types.
2018-06-21 09:06:36 +01:00
Vladimir Komendantskiy 92381e485c
Merge pull request #64 from andogro/README_updates
Readme updates
2018-06-21 08:58:26 +01:00
Andrew Gross 6cb8197ad8 Resolved merge conflict 2018-06-20 14:22:57 -06:00
Andreas Fackler a47123c4dd Improve Hash impl for Ciphertext.
This formulation makes it harder to forget updating the `Hash`
implementation if the `Ciphertext` type changes.
2018-06-20 22:09:43 +02:00
Andreas Fackler 1f27fa6891 Implement Hash for "public" cryptographic types.
This adds a `Hash` implementation for public keys, commitments,
ciphertexts and signatures — types that might make sense to be included
in special transactions. The `DynamicHoneyBadger` implementation will
require some of them.
2018-06-20 22:09:43 +02:00
Andrew Gross ace6e6e420 modified example simulation 2018-06-20 11:53:09 -06:00
Andrew Gross 830d48b95c Updated README 2018-06-20 11:36:01 -06:00
Vladimir Komendantskiy 1d2d471d70
Merge pull request #67 from poanetwork/afck-serde
Rename keygen to poly, support serde by default.
2018-06-20 11:07:35 +01:00
Andreas Fackler 6484242afc Simplify serde implementations, add Ciphertext. 2018-06-20 10:43:59 +02:00
Andreas Fackler 83f8d61402 Support serde by default.
This removes the `serialization-serde` feature, since serde is already
used internally and therefore a dependency anyway.
2018-06-20 10:21:52 +02:00
Andreas Fackler c84c60d826 Rename crypto::keygen to crypto::poly. 2018-06-20 10:05:03 +02:00
Vladimir Komendantskiy 1436d85455
Merge pull request #63 from poanetwork/afck-hb-whose-batch
Return proposer info from HoneyBadger.
2018-06-19 09:53:52 +01:00
Andreas Fackler 9faf1d8701
Merge pull request #60 from poanetwork/afck-docs
Add some crate-level documentation.
2018-06-19 10:43:47 +02:00
Andrew Gross aef7ceed0a added rust and cargo installation instruction 2018-06-18 13:37:53 -06:00
Andrew Gross 307c94ca95 Header reorganization and spacing considerations 2018-06-18 13:34:21 -06:00
Andrew Gross 5855c4ffe7 updated links 2018-06-18 12:53:50 -06:00
Andrew Gross bb18757d17 Updated README, added CONTRIBUTING.md file 2018-06-18 12:02:00 -06:00
Andreas Fackler 66f396e01c Remove more NodeUid trait bounds.
Use a `BTreeMap` instead of `HashMap` in `NetworkInfo`. The number of
nodes can't grow very large anyway.
2018-06-18 16:37:07 +02:00
Andreas Fackler 3f707a8e12 Return proposer info from HoneyBadger.
Also, consistently name generic arguments, and remove some unused trait
bounds.
2018-06-18 16:19:54 +02:00
Andreas Fackler 3bf86453c3 Restructure crate-level docs, replace honest with correct. 2018-06-15 17:52:17 +02:00
Andreas Fackler e392f4c3af Add some crate-level documentation. 2018-06-14 17:44:43 +02:00
Andreas Fackler 2e7fd91a1b
Merge pull request #59 from poanetwork/vk-common-coin-by-DKG
Common coin
2018-06-14 16:04:01 +02:00
Vladimir Komendantskiy 3ed63a1507 formatting 2018-06-14 14:10:05 +01:00
Vladimir Komendantskiy f2a03f8f04 corrected the agreement test proposer ID 2018-06-14 13:45:58 +01:00
Vladimir Komendantskiy 82b4250f0d added the broadcast proposer ID in the common coin nonce 2018-06-14 13:36:48 +01:00
Vladimir Komendantskiy 994600bcf6 renamed a fn argument for readability 2018-06-14 12:43:18 +01:00
Vladimir Komendantskiy 3393052b4b review comment coverage 2018-06-14 12:28:38 +01:00
Vladimir Komendantskiy 5008d11ada Revert "the set of node indices of common coin shares is now computed only once"
This reverts commit e9808efc61.
2018-06-14 10:05:05 +01:00
Vladimir Komendantskiy e9808efc61 the set of node indices of common coin shares is now computed only once 2018-06-13 22:05:11 +01:00