Skip to content

FROST Implementation #84

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 38 commits into from
Sep 6, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
e01a524
Implement FROST DKG
nickfarrow Mar 18, 2022
ecbeeae
frost progress
LLFourn Mar 20, 2022
e05f3f2
Write failing but compiling test
LLFourn Mar 21, 2022
febbc41
Various trait/derive additions
LLFourn Mar 23, 2022
34e2aff
progress but still failing test
nickfarrow Mar 22, 2022
cd62a25
partial verification working
nickfarrow Mar 22, 2022
f80ef59
verifyable combined signatures!
nickfarrow Mar 23, 2022
89f8288
frost tweaks
nickfarrow Mar 23, 2022
209f272
Make Frost nonce hash be unit type by default
LLFourn Mar 23, 2022
c33e5a7
Allow generating nonces from dkg
LLFourn Mar 24, 2022
d89f07f
first frost docs
nickfarrow Mar 23, 2022
2fcded5
renaming functions and structs
nickfarrow Apr 4, 2022
aa7c5bf
Use BTreeMap and vec of nonces
nickfarrow Apr 4, 2022
7b2b278
switch to internal schnorr hash for pop
nickfarrow Apr 4, 2022
a324a29
New gen_nonce with sid set by application
nickfarrow Apr 6, 2022
d883fcf
calculate needs_negation later
nickfarrow Apr 6, 2022
2758d68
create proof of possession in keygen
nickfarrow Apr 6, 2022
6a3d6d8
verify proof of possessions
nickfarrow Apr 7, 2022
a803491
Add ScalarPoly::random_using_secret() for specifying first coeff
nickfarrow Apr 7, 2022
09992a7
passing prop test
nickfarrow Apr 8, 2022
aed5a95
docs fixes and clean code
nickfarrow Apr 10, 2022
b18d2a9
Use prop args for randomness, and schnorr for pop
nickfarrow Apr 11, 2022
3b9faf7
clean TODOs, 2x tweak not yet working
nickfarrow Apr 11, 2022
b1c48f4
fix multiple tweaks negation by removing extra addition of self.tweak
nickfarrow Apr 12, 2022
51fe735
prop test restructure
nickfarrow Apr 13, 2022
1e88446
use proper sid for generating nonces
nickfarrow Apr 13, 2022
aaa5352
use keygen_id in pop
nickfarrow Apr 13, 2022
9f6049b
Fix keygen_id
nickfarrow Apr 20, 2022
aac0e57
use option type for proptest tweaks
nickfarrow May 9, 2022
c479a46
Synopsis and make docs test pass
nickfarrow May 9, 2022
abf6e0d
clearer synopsis, docs, comments
nickfarrow May 16, 2022
c788e72
Deterministically shuffled signer mask with TestRng
nickfarrow May 30, 2022
7803ed8
Synopsis and make docs test pass
nickfarrow May 9, 2022
64dce45
XOnlyFrostKey and plain tweaks
nickfarrow Aug 16, 2022
7731fea
use NonceKeyPair::generate
nickfarrow Aug 17, 2022
4386463
test plain tweaks and formatting
nickfarrow Aug 17, 2022
3bee20b
pr feedback
nickfarrow Aug 18, 2022
81b425f
lloyd fixups
LLFourn Sep 6, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions schnorr_fun/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ assert!(schnorr.verify(&verification_key, message, &signature));
- Adaptor signatures
- compatibility with `rust-secp256k1`'s `schnorrsig` module with `libsecp_compat` feature.
- [MuSig2] implementation compatible with [this PR](https://github.com/jonasnick/bips/pull/37) of the spec.
- [FROST] implementation
- Feature flags
- `serde`: for serde implementations for signatures
- `libsecp_compat`: for `From` implementations between `rust-secp256k1`'s Schnorr signatures.
Expand All @@ -64,3 +65,4 @@ assert!(schnorr.verify(&verification_key, message, &signature));
[secp256kfun]: https://docs.rs/secp256kfun
[secp256k1-zkp]: https://github.com/ElementsProject/secp256k1-zkp/pull/131
[MuSig2]: https://eprint.iacr.org/2020/1261.pdf
[FROST]: https://eprint.iacr.org/2020/852.pdf
Loading