Skip to content
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

Frost CI check #3

Open
wants to merge 35 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
7840a1f
frost: initialize project
jesseposner Sep 4, 2022
ec537f5
frost: share generation
jesseposner Sep 4, 2022
739e6a5
frost: share aggregation
jesseposner Sep 4, 2022
a33e998
frost: nonce generation
jesseposner Sep 4, 2022
0fb241b
frost: key tweaking
jesseposner Sep 4, 2022
ca20715
frost: nonce aggregation and adaptor signatures
jesseposner Sep 4, 2022
e495c9d
frost: signature generation and aggregation
jesseposner Sep 4, 2022
bf64786
frost: add tests
jesseposner Sep 4, 2022
edc12a5
frost: add example file
jesseposner Sep 4, 2022
6c1cf4e
frost: add documentation file
jesseposner Sep 4, 2022
532c20e
Remove unnecessary chacha rounds from share_gen
jesseposner Oct 7, 2022
a3e8515
Commit to agg_pk in noncehash
jesseposner Nov 2, 2022
fd70310
Commit to indexhashes in noncehash
jesseposner Nov 7, 2022
fe7e13c
Add secp256k1_frost_verify_adaptor API
jesseposner Dec 9, 2022
b0234a2
Add multi-hop lock tests
jesseposner Dec 9, 2022
e4bbe10
Resolve conflicts
jesseposner Mar 29, 2023
dc5c956
Improve variable naming
jesseposner Mar 29, 2023
b349f11
Add vss_gen
jesseposner Jul 29, 2023
76e4129
Remove keypair from share_gen
jesseposner Jul 29, 2023
99d1ef4
Remove vss_commitment from share_gen
jesseposner Jul 29, 2023
3764940
Add vss input to share_gen
jesseposner Jul 29, 2023
22a969c
Add pok input to share_gen
jesseposner Jul 29, 2023
004b79c
Verify pok in share_gen
jesseposner Jul 29, 2023
66041d3
Improve variable naming
jesseposner Jul 29, 2023
9bfd213
Resolve conflicts
jesseposner Jul 29, 2023
bee68f0
Revert "scalar: Remove unused secp256k1_scalar_chacha20"
jesseposner Jul 29, 2023
dd3d991
Fix valgrind
jesseposner Jul 29, 2023
9a6ad08
Fix valgrind
jesseposner Aug 17, 2023
6f2c074
Augment comment
jesseposner Aug 17, 2023
e1df046
Resolve conflicts
jesseposner Aug 17, 2023
2a785f4
Add missing string dependency
jesseposner Aug 17, 2023
88c2d96
Fix test contexts
jesseposner Aug 17, 2023
4a0b544
frost: make position of asterisk (*) consistent in include/ file
jonasnick Aug 21, 2023
4ac59b4
frost: remove deprecated CONTEXT_SIGN and CONTEXT_VERIFY flags
jonasnick Aug 21, 2023
715f547
frost: fix documentation on context flag requirements
jonasnick Aug 21, 2023
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
Prev Previous commit
frost: fix documentation on context flag requirements
jonasnick committed Aug 21, 2023
commit 715f5475ff88c962d99dd2ff718e20fb2adc586f
19 changes: 8 additions & 11 deletions include/secp256k1_frost.h
Original file line number Diff line number Diff line change
@@ -191,8 +191,7 @@ SECP256K1_API int secp256k1_frost_share_parse(
* threshold, and creates a proof of knowledge of the first coefficient.
*
* Returns: 0 if the arguments are invalid, 1 otherwise
* Args: ctx: pointer to a context object initialized for
* verification
* Args: ctx: pointer to a context object
* Out: vss: the coefficient commitments. The length of this array
* must be equal to the threshold (can be NULL).
pok64: pointer to the proof of knowledge of the first
@@ -232,8 +231,7 @@ SECP256K1_API int secp256k1_frost_vss_gen(
* random to avoid their reuse.
*
* Returns: 0 if the arguments are invalid, 1 otherwise
* Args: ctx: pointer to a context object initialized for
* verification
* Args: ctx: pointer to a context object
* Out: share: pointer to the key generation share
* In: vss: pointer to the VSS commitments of the share recipient
* pok64: pointer to the proof of knowledge of the first VSS
@@ -308,7 +306,7 @@ SECP256K1_API int secp256k1_frost_share_agg(
*
* Returns: 0 if the arguments are invalid or the share does not verify, 1
* otherwise
* Args ctx: pointer to a context object, initialized for verification
* Args ctx: pointer to a context object
* In: threshold: the minimum number of signers required to produce a
* signature
* pk: pointer to the public key of the share recipient
@@ -381,7 +379,7 @@ SECP256K1_API SECP256K1_WARN_UNUSED_RESULT int secp256k1_frost_pubkey_tweak(
* Returns: 0 if the arguments are invalid or the resulting public key would be
* invalid (only when the tweak is the negation of the corresponding
* secret key). 1 otherwise.
* Args: ctx: pointer to a context object initialized for verification
* Args: ctx: pointer to a context object
* Out: output_pubkey: pointer to a public key to store the result. Will be set
* to an invalid value if this function returns 0. If you
* do not need it, this arg can be NULL.
@@ -422,7 +420,7 @@ SECP256K1_API SECP256K1_WARN_UNUSED_RESULT int secp256k1_frost_pubkey_ec_tweak_a
* Returns: 0 if the arguments are invalid or the resulting public key would be
* invalid (only when the tweak is the negation of the corresponding
* secret key). 1 otherwise.
* Args: ctx: pointer to a context object initialized for verification
* Args: ctx: pointer to a context object
* Out: output_pubkey: pointer to a public key to store the result. Will be set
* to an invalid value if this function returns 0. If you
* do not need it, this arg can be NULL.
@@ -489,7 +487,7 @@ SECP256K1_API int secp256k1_frost_compute_pubshare(
* Note that using the same agg_share for multiple FROST sessions is fine.
*
* Returns: 0 if the arguments are invalid and 1 otherwise
* Args: ctx: pointer to a context object, initialized for signing
* Args: ctx: pointer to a context object (not secp256k1_context_static)
* Out: secnonce: pointer to a structure to store the secret nonce
* pubnonce: pointer to a structure to store the public nonce
* In: session_id32: a 32-byte session_id32 as explained above. Must be
@@ -523,8 +521,7 @@ SECP256K1_API int secp256k1_frost_nonce_gen(
*
* Returns: 0 if the arguments are invalid or if some signer sent invalid
* pubnonces, 1 otherwise
* Args: ctx: pointer to a context object, initialized for
* verification
* Args: ctx: pointer to a context object
* Out: session: pointer to a struct to store the session
* In: pubnonces: array of pointers to public nonces sent by the signers
* n_pubnonces: number of elements in the pubnonces array. Must be
@@ -596,7 +593,7 @@ SECP256K1_API int secp256k1_frost_partial_sign(
*
* Returns: 0 if the arguments are invalid or the partial signature does not
* verify, 1 otherwise
* Args ctx: pointer to a context object, initialized for verification
* Args ctx: pointer to a context object
* In: partial_sig: pointer to partial signature to verify, sent by
* the signer associated with `pubnonce` and `pubkey`
* pubnonce: public nonce of the signer in the signing session