Stanford talk Nov 4th, new secp256k1 implementation using libsecp256k1 via Java FFM (or Bouncy Castle)

Sean Gilligan sean at msgilligan.com
Tue Nov 4 02:19:41 UTC 2025


Hi all,

Andreas Schildbach and I are working on a new Open Source Java library 
for ECC on the secp256k1 curve: secp256k1-jdk [1].

Tuesday Nov 4th, Dan Boneh will be hosting and I will be presenting and 
demonstrating the secp256k1-jdk API at Stanford. The event is San 
Francisco BitDevs Socratic Seminar 64 [2]. More info and RSVP is here:

https://www.meetup.com/sf-bitcoin-devs/events/311604247/

One of the goals of the talk is to evangelize modern Java (especially 
FFM) -- so it would be great if some other Java folks could attend.

secp256k1-jdk defines an opinionated Java API based upon the 
libsecp256k1 'C' library and two implementations using the Java 
ServiceLoader mechanism. The API provides both Ecdsa and Schnorr 
signing/verification, ECDH, and other cryptography primitives. The first 
implementation uses Java FFM ("Panama") to wrap the well-regarded 
libsecp256k1 [3] library and includes Schnorr Signature signing and 
verification. The second implementation uses the pure-Java Bouncy Castle 
[4] library and implements the other functions but not Schnorr (yet.) 
The API currently requires Java 9 but the libsecp256k1/FFM 
implementation requires Java 25.

A Java Cryptography Architecture provider is not on the current roadmap, 
but could happen someday if there is interest and contribution.

We plan on doing a round of integration testing with Sparrow Wallet 
(JavaFX) [5] and bitcoinj [6] (which is used in the Android app "Bitcoin 
Wallet") in the next few months.

I welcome any and all feedback: please email me or open an issue or PR 
on GitHub.

Regards,

Sean Gilligan


[1] secp256k1-jdk: https://github.com/bitcoinj/secp256k1-jdk

[2] SF BitDevs Socratic Seminar 64: https://sfbitcoindevs.org/socratic-64

[3] libsecp256k1: https://github.com/bitcoin-core/secp256k1

[4] Bouncy Castle: https://www.bouncycastle.org

[5] Sparrow Wallet: https://github.com/sparrowwallet/sparrow

[6] bitcoinj: https://github.com/bitcoinj/bitcoinj








More information about the security-dev mailing list