natalie
e5c5e53b86
Fix clippy issue ( #640 )
2024-04-16 21:58:54 +00:00
Conrado Gouvea
c205ef73e0
Fix --no-default-features ( #630 )
...
* fix --no-default-features; also make sure everything compilers with every feature combination
* backport some fixes from no-std PR
* update CHANGELOG
2024-04-10 15:13:31 +00:00
Conrado Gouvea
d048057a21
1.0.0 release ( #615 )
2024-02-19 19:56:58 +00:00
Conrado Gouvea
2f01e01e78
frost-core: expose SigningKey::to/from_scalar() ( #601 )
...
* frost-core: expose SigningKey::to/from_scalar()
* Update frost-core/CHANGELOG.md
2024-02-01 13:10:20 +00:00
natalie
e1fb9bc953
Check num of commitments against min signers ( #597 )
...
* Check num of commitments against min signers
* Move incorrect number of commitments check to part2 in the DKG
2024-01-17 13:18:27 +00:00
Conrado Gouvea
9921b1218e
support serializing SigningNonces ( #595 )
2024-01-16 20:48:17 +00:00
natalie
1e29230827
Create DKG vector tests ( #587 )
...
* Add DKG vector test for ed25519 (#567 )
* Add DKG test vectors for all ciphersuites (#567 )
* Add description for DKG vector test (#567 )
* Update imports for DKG vector tests (#567 )
2023-12-04 19:15:25 +00:00
David Wong
6d82adf941
fix deserialization issue in ciphersuite_deserialize ( #589 )
2023-12-04 16:34:42 +00:00
Conrado Gouvea
221c089f2b
create new() methods for VerifirableSecretSharingCommitment and CoefficientCommitment ( #580 )
2023-11-20 14:56:33 +00:00
natalie
4406e01afc
Update changelog ( #582 )
...
Update changelog (#581 )
2023-11-17 10:46:37 +00:00
natalie
036b0ce3fe
Fix warnings ( #578 )
...
* Use from_coefficients() instead of evaluate_polynomial() when computing a signing_share (#576 )
* Refactor BindingFactor::deserialize into from_hex as it's only used for testing (#576 )
* Remove BindingFactorList::iter() and use directly in vector test (#576 )
2023-11-16 17:18:40 +00:00
dependabot[bot]
99866a7902
Update itertools requirement from 0.11.0 to 0.12.0 ( #574 )
...
Updates the requirements on [itertools](https://github.com/rust-itertools/itertools ) to permit the latest version.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.11.0...v0.12.0 )
---
updated-dependencies:
- dependency-name: itertools
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-15 11:53:46 -03:00
natalie
37e8856449
Release v1.0.0-rc.0 ( #575 )
...
* Update versions to 1.0.0-rc.0 (#552 )
* Update changelog for release 1.0.0-rc.2 (#552 )
* Update frost core version in ciphersuites to 1.0.0-rc.0 (#552 )
* Update rerandomized and frost-core dependencies to use v1.0.0-rc.0 (#552 )
* Update release checklist to add instruction for updating version numbers for frost-rerandomized (#552 )
* Update mdbook-admonish (#552 )
2023-11-15 13:08:34 +00:00
Conrado Gouvea
e69002e0f6
re-export serde in ciphersuite crates ( #573 )
2023-11-10 17:27:41 +00:00
Conrado Gouvea
408540fb86
frost-core: split part of lib.rs into traits.rs and serialization.rs ( #569 )
2023-11-07 14:57:21 +00:00
Conrado Gouvea
a0df08e30a
remove frost module ( #568 )
2023-10-31 16:30:05 +00:00
Conrado Gouvea
71c092532c
add computing PublicKeyPackage from commitments ( #551 )
...
* Refactor computing the public key package and expose it.
* Fix clippy issue.
* Add test.
* Fix test.
* Improve test.
* Split it up.
* Fix build.
* Improve api.
* Expose more stuff.
* Expose more stuff.
* Extract proof of knowledge verification.
* Add construct_proof_of_knowledge.
* fix dkg test
* overall cleanup
* change IncorrectCommitment to IncorrectNumberOfCommitments
* clippy fixes
* fix order of inputs for DKG commitment hashing
* also change regular challenge() verifying key argument to VerifyingKey
---------
Co-authored-by: David Craven <david@craven.ch>
2023-10-27 11:48:54 +00:00
natalie
e0db6151e0
Support optional cheater detection ( #564 )
...
* Add feature for cheater detection (#355 )
Create option for aggregating without cheater detection
Some renaming
* avoid duplicating aggregate()
* Make cheater detection feature on by default (#355 )
* Update changelog for cheater detection feature addition (#355 )
* Default to cheater detection feature in ciphersuites (#355 )
* Remove unnecessary cheater-detection gates in tests (#355 )
---------
Co-authored-by: Conrado Gouvea <conradoplg@gmail.com>
2023-10-25 13:23:26 +00:00
Conrado Gouvea
266f12624e
clippy fixes ( #565 )
2023-10-20 15:12:46 +00:00
natalie
ba3ef7dbb8
Convert all HashMaps to BTreeMaps ( #547 )
...
Convert HashMaps to BTreeMaps (#476 )
2023-09-22 14:08:32 +00:00
Conrado Gouvea
a5dc479b4d
remove serde bounds from Ciphersuites ( #541 )
2023-09-21 09:24:21 +00:00
Conrado Gouvea
4ba88c0210
add version field to serialization at the beginning; move ciphersuite after it ( #540 )
...
* add version field into a Header field along with the ciphersuite ID
* Change Ciphersuite ID to be the contextString from the spec
* Apply suggestions from code review
Co-authored-by: natalie <n.l.eskinazi@gmail.com>
---------
Co-authored-by: natalie <n.l.eskinazi@gmail.com>
2023-09-20 15:40:01 +00:00
natalie
eee505a49e
Rename fields to match types ( #539 )
...
* Rename signer_pubkeys to verifying_shares (#495 )
* Rename group_public to verifying_key (#495 )
Some naming needed to be updated in DKG as well as there was already a verifying_key which was actually a verifying_share
* Update KeyPackage field from secret_share to signing_share (#495 )
* Update Package field from secret_share to signing_share (#495 )
* Update KeyPackage field from public to verifying_share (#495 )
* Update SecretShare field vrom value to signing_share (#495 )
* Remove secret function from SecretShare (#495 )
This is because we now can use the getter to get signing_share() without the need for an additional function
* Update serde_tests with updated field names (#495 )
2023-09-15 14:53:43 +00:00
Conrado Gouvea
c38305b536
bump versions and update changelog for 0.7.0 release ( #538 )
2023-09-13 16:52:41 +00:00
Conrado Gouvea
d4b03ea7bf
add default serialization format ( #511 )
...
* add default serialization format
* remove SHORT_ID from Ciphersuite trait
2023-09-13 12:58:26 +00:00
Conrado Gouvea
9752182fa1
change reconstruct() to take KeyPackages; validate size ( #523 )
...
change reconstruct() to take KeyPackages; validate size
2023-09-11 21:51:33 +00:00
Conrado Gouvea
4ee0d32867
check number of commitments in sign() ( #480 )
...
* check number of commitments in sign()
* make comment clearer
2023-09-06 09:48:30 +00:00
dependabot[bot]
386de4de6f
Update visibility requirement from 0.0.1 to 0.1.0 ( #518 )
...
Updates the requirements on [visibility](https://github.com/danielhenrymantilla/visibility.rs ) to permit the latest version.
- [Release notes](https://github.com/danielhenrymantilla/visibility.rs/releases )
- [Commits](https://github.com/danielhenrymantilla/visibility.rs/compare/v0.0.1...v0.1.0 )
---
updated-dependencies:
- dependency-name: visibility
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 19:38:52 +00:00
Conrado Gouvea
4abe7fe638
document features ( #512 )
2023-09-04 19:38:48 +00:00
Conrado Gouvea
f3eb8681a8
check if the correct number of identifiers was provided in split() ( #481 )
2023-09-02 05:24:17 +00:00
Conrado Gouvea
5d97cf126d
fix DKG challenge hashing order to match paper ( #484 )
2023-09-02 05:13:55 +00:00
Conrado Gouvea
fcd0e31e6b
return error when validating an empty batch ( #487 )
...
* return error when validating an empty batch
* reuse n
2023-09-02 05:13:51 +00:00
Conrado Gouvea
ab4af9bff4
check if the part3() identifier consistency check works ( #506 )
2023-09-02 05:11:18 +00:00
Conrado Gouvea
09206aead8
fix misc docs issues ( #489 )
...
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2023-09-02 01:06:57 -04:00
Conrado Gouvea
0e29b614bd
update spec links ( #488 )
2023-09-02 05:01:07 +00:00
Conrado Gouvea
a19d2f9abf
don't import unneeded dependencies when not required ( #492 )
2023-09-02 05:01:01 +00:00
Conrado Gouvea
5cd3f8fc79
return error when creating a zero SigningKey ( #496 )
...
* return error when creating a zero SigningKey
* Update frost-core/src/signing_key.rs
* Update frost-core/src/signing_key.rs
---------
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2023-09-02 04:59:57 +00:00
Conrado Gouvea
0fb4824e4b
improve sign() performance by caching SigningCommitments ( #493 )
2023-09-02 04:59:52 +00:00
Conrado Gouvea
f3fd9102a3
check if iterators have the same size in multiscalar mul ( #494 )
2023-08-28 16:20:14 +00:00
Conrado Gouvea
60d9942f36
fix Field::deserialize() docs ( #483 )
2023-08-18 15:39:41 +00:00
Conrado Gouvea
9dffc6f516
fix some docs issues from audit ( #485 )
2023-08-18 14:52:51 +00:00
Conrado Gouvea
87346f4f3c
Fix unchecked access ( #477 )
...
* add test that reproduces issue
* remove usages of slicing and unwraps; add clippy lints
* check in aggregate() if identifiers are consistent
2023-08-16 18:38:36 +00:00
natalie
bb94a34362
Add minimum participant constraints ( #453 )
...
* Add validation for missing identifier in signing package (#442 )
* Add error handling for identifier having an invalid commitment (#442 )
* Fixed comment (#442 )
* Add validation for participant numbers (#443 )
Add to split() and generate_secret_polynomial()
* Add participant validation for dkg and repairable (#443 )
2023-08-16 18:38:29 +00:00
Conrado Gouvea
ba8086db5c
Simplify rerandomized FROST ( #437 )
...
* refactor Lagrange coefficient computation
* simplified rerandomized FROST
* switch to a Randomize trait, remove unaccurate comment
* remove manual rerandomization test
* improve comments
* removed unneeded alpha_share
* Apply suggestions from code review
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
* frost-rerandomized: add serde feature
* add Randomizer type
* revert DuplicatedIdentifiers back to DuplicatedIdentifier
---------
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2023-08-14 16:15:22 +00:00
Conrado Gouvea
9413b49c05
Update test vectors ( #438 )
...
update test vectors to final version (v1) and update spec links
2023-08-14 10:39:15 +00:00
natalie
b3a7927d7f
Add validation for missing identifier in signing package ( #452 )
...
* Add validation for missing identifier in signing package (#442 )
* Add error handling for identifier having an invalid commitment (#442 )
* Fixed comment (#442 )
* Improve comment for number of signers validation
Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
---------
Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2023-07-26 22:24:11 -03:00
Conrado Gouvea
9b5d88da72
refactor Lagrange coefficient computation ( #436 )
...
* refactor Lagrange coefficient computation
* A line
* Apply suggestions from code review
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
* address review comments; make compute_lagrange_coefficients() not pub by default
---------
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2023-07-19 16:47:09 +00:00
Conrado Gouvea
5fa17ed15c
update versions and changelog for 0.6.0 ( #434 )
...
* update versions and changelog for 0.6.0
* fix typos
2023-07-05 14:04:05 +00:00
Conrado Gouvea
b8ca1678a4
remove stale TODOs ( #431 )
2023-07-05 13:19:25 +00:00
Deirdre Connolly
404cc361fd
Include the group public key in computing the binding factor ( #410 )
...
* Prelim implementation of including the group public key in computing the binding factor
Needs updated test vectors from the spec PoC and updated tests
* update test vectors
* add integration_test.rs to gencode which we forgot to do before
---------
Co-authored-by: Conrado Gouvea <conradoplg@gmail.com>
2023-07-05 13:19:19 +00:00