kngako
83dff95ece
Update .gitsubmodule for libsecp256k1
2024-08-23 02:09:58 +02:00
kngako
9a06440277
Getting frost share verify to work
2024-08-23 01:03:56 +02:00
kngako
9541124a4a
Don't usePinned where not necessary
2024-08-22 23:13:11 +02:00
kngako
8cacf80491
Fix for nVssCommitments declarations
2024-08-22 10:47:18 +02:00
kngako
64e15574db
Fix for handling nonce processing
2024-08-21 22:28:30 +02:00
kngako
d74895079d
Fix for handling ids33 in JNI
2024-08-21 21:35:27 +02:00
kngako
e6cba2b505
A few JNI fixes
2024-08-21 18:35:41 +02:00
kngako
5117507f25
Full tests on native
2024-08-21 17:28:07 +02:00
kngako
c39590a859
Broke the JNI now
2024-08-20 22:29:29 +02:00
kngako
83141916e8
JVM Tests hacks
2024-08-20 02:19:43 +02:00
kngako
f5ab7fdeb7
Improve JNI handling of frost share gen
2024-08-20 01:39:22 +02:00
kngako
08f0304d4c
Most test cases on JNI
2024-08-20 01:05:29 +02:00
kngako
af3f44f426
Tests JNI share aggregate
2024-08-20 00:09:56 +02:00
kngako
be7f11d657
Return outputs of frost_shares_gen on jni
2024-08-19 23:58:15 +02:00
kngako
6e578d43d7
More logic for the JNI stuff
2024-08-19 22:14:27 +02:00
kngako
b1e96f329b
Increase test and fix some compiler errors on the JNI side.
2024-08-19 21:40:56 +02:00
kngako
e7f074d36e
Getting started with unit tests
2024-08-18 01:27:04 +02:00
kngako
32ee077995
Improve pointer handling logic
2024-08-14 09:14:34 +02:00
kngako
41ddd40691
Return byteArray instead of array of byteArrays
2024-08-13 01:41:45 +02:00
kngako
3efca867e6
Fix NativeSecp256k1 call
2024-08-12 23:23:26 +02:00
kngako
45c713d56e
Conditional checks
2024-08-12 23:02:56 +02:00
kngako
8b56662685
Correct use of whitespace
2024-08-12 22:15:17 +02:00
kngako
28d255daca
Knock out some todos
2024-08-12 02:55:41 +02:00
kngako
1b29cfa2d7
JNI implementations continued
2024-08-12 02:16:54 +02:00
kngako
b439181376
JNI implementations
2024-08-11 03:43:30 +02:00
kngako
5c4186770f
Fix comments on secp256k1_frost_partial_sig_agg
2024-08-07 03:09:20 +02:00
kngako
86d7d9835f
Handle inputs/outputs and nulls correctly.
2024-08-07 02:48:25 +02:00
kngako
23739e13a8
Add comments to Secp256k1CFunctions.h
2024-08-07 02:30:43 +02:00
kngako
e7ec7b7478
Update Secp256k1CFunctions.h
2024-08-06 02:13:12 +02:00
kngako
eb71fd5ff4
Improve arguments
2024-08-06 02:11:57 +02:00
kngako
b064c0bcf0
Check arguments to constraints
2024-08-06 00:19:55 +02:00
kngako
9e287feb26
Cinterop for arrays of pointers
2024-08-05 22:34:45 +02:00
kngako
3c01a2aad4
Use frost in Secp256k1 native logic
2024-08-04 23:53:28 +02:00
Kgothatso
4826863644
Update secp git submodule
2024-08-03 19:56:03 +02:00
Kgothatso
099dcccf49
Make use of libsecp256k1 for musig+frost functions
2024-08-01 02:45:16 +02:00
Kgothatso
600431caa1
Update gitignore
2024-08-01 00:32:13 +02:00
kngako
30d690ee6e
Add libsecp256k1-zkp submodule for frost logic
2024-07-31 07:59:58 +02:00
kngako
4e1b38d163
Remove secp256k1 submodule
2024-07-31 07:58:35 +02:00
Fabrice Drouin
567f411e12
Verify musig2 secret nonces ( #108 )
...
* Verify musig2 secret nonces
Trying to generate a musig2 partial signature with a secret nonce that was generated with a public key that does not match the signing key's public key will trigger secp256k1's illegal callback (which calls abort()) and crash the application.
=> Here we verify that the secret nonce matches the signing key before we call secp256k1_musig_partial_sign().
The verification method is a bit hackish (we extract the public key from the secret nonce blob) because secp256k1 does not export the methods we need to do this cleanly.
2024-04-18 09:54:51 +02:00
Fabrice Drouin
eb92fccbd6
Build a universal JNI binary for macos ( #106 )
...
Universal libraries embed both arm64 and x64 binaries.
2024-03-12 10:09:34 +01:00
Fabrice Drouin
d30e2a1b59
Set version to 0.15.0 ( #105 )
v0.15.0
2024-03-04 19:29:52 +01:00
Fabrice Drouin
bae4744bcb
Add macos build targets ( #104 )
...
* Add macos build targets
* Update snapshot publishing script
2024-03-04 17:58:20 +01:00
Fabrice Drouin
b2eb68bf83
Post release cleanup ( #103 )
...
* Set version to 0.15.0-SNAPSHOT
* Update publishing scripts
2024-02-14 18:28:19 +01:00
Fabrice Drouin
c582396b96
Set version to 0.14.0 ( #102 )
v0.14.0
2024-02-14 13:51:52 +01:00
Fabrice Drouin
202b0c94b6
Add support for musig2 ( #93 )
...
* Use Jonas Nick's musig2 branch
* Reformat c code (no functional changes)
* Implement musig2
* Add documentation to musig2 functions (#97 )
Usage of the Musig2 functions isn't intuitive at all, especially with
the key aggregation cache and session data. It's important to provide
accurate documentation to help users understand how to correctly produce
musig2 signatures.
We also change argument names to match Kotlin best practices instead of
using the same argument names as C functions.
* Add musig2 reference tests (no functional changes)
---------
Co-authored-by: Bastien Teinturier <31281497+t-bast@users.noreply.github.com>
2024-02-14 13:28:22 +01:00
Fabrice Drouin
780f97e46d
Set version to 0.14.0-SNAPSHOT ( #99 )
2024-01-23 22:27:31 +01:00
Fabrice Drouin
da2cf93fcf
Update README.md
2024-01-23 21:55:59 +01:00
Fabrice Drouin
f5e1655ff0
Set version to 0.13.0 ( #98 )
v0.13.0
2024-01-23 16:46:55 +01:00
Fabrice Drouin
8ba5d4652e
Use kotlin 1.9 ( #92 )
...
Use kotlin 1.9
2024-01-23 15:44:06 +01:00
Fabrice Drouin
e94e41b896
Update secp256k1 to version 0.4.1 ( #96 )
...
Use secp256k1 0.4.1
2024-01-02 11:16:36 +01:00