i2pplus

JBIGI Native Libraries

Note: For the latest information, see:


What is JBIGI?

JBIGI provides native JNI bindings for the GNU Multiple Precision Arithmetic Library (GMP) to accelerate cryptographic operations in I2P, including:


Current Version (March 2026)

Component Version
GMP 6.3.0
JBIGI 4

The JBIGI version can be queried at runtime via nativeJbigiVersion().

New in This Release


Supported Architectures

Linux (x86 32-bit)

none  pentium  pentium2  pentium3  pentium4  pentiumm  pentiummmx
k6  k62  athlon  geode  viac3  viac32

Linux (x86_64 64-bit)

none_64  core2  corei  coreisbr  coreihwl  coreibwl
athlon64  k10  bobcat  jaguar  bulldozer  piledriver  steamroller  excavator
atom  nano  pentium4  zen  zen2  skylake  silvermont  goldmont

Linux (ARM)

armv5  armv6  armv7  armv7a  armcortex8  armcortex9  armcortex15
armv8  armv8_64  aarch64

macOS

core2  corei  coreisbr  coreihwl  coreibwl

Windows

Same architectures as Linux (compiled via MinGW cross-compilation)

FreeBSD

Same architectures as Linux


Build History

2026 - March

2016 - April

2011 - May/June

2006 - February

2005 - December

2005 - September

2004 - August


Rebuilding from Source

To rebuild jbigi for your specific architecture:

# Linux 64-bit
cd core/c/jbigi
./build-linux64.sh -a

# Windows 64-bit (cross-compile with MinGW)
./build-win64.sh -a

# ARM64 (cross-compile with aarch64-linux-gnu-gcc)
./build-arm64.sh -a

For more options, see core/c/jbigi/README.md.


File Naming Convention

The library naming follows {lib}jbigi-{OS}-{CPU}.{ext}:

OS Prefix Extension
Linux libjbigi .so
FreeBSD libjbigi .so
macOS libjbigi .jnilib
Windows jbigi .dll

The CPUID library at runtime selects the optimal binary for your CPU based on detected features.