Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

blst-bindings-java

Maven Central License

blst-bindings-java provides a thin Java package for supranational/blst — SWIG-generated wrappers only, no bundled native libraries. The native library is built from source on the target system giving full control over CPU optimizations, compiler flags, and security patches.

Why

The Waves node requires BLS12-381 operations. Existing Maven packages bundle pre-built native libraries that crash on older CPUs without BMI2/ADX (e.g. Intel Atom). This package ships only Java wrappers — the native library is built from source on the target machine, so it always matches the CPU.

Build & Install

bash build.sh

Missing dependencies (swig, gcc, g++, default-jdk) are installed automatically via apt-get.

Testing

bash build.sh
bash verify.sh

Expected output:

BLS12-381 keygen: OK
BLS12-381 sign:   OK
BLS12-381 verify: OK

CI:

  • All tests run in GitHub Actions on every push and on tag releases.

Requirements

  • Linux (amd64)
  • Java 11 or higher

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Dmitrii Pichulin (@deemru)

Related Projects

Links

About

Wrappers only for "supranational/blst"

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages