Bitcoin4J is a Bitcoin library for the Java Language licensed under the Apache License 2.0.

This library has been built in line with the ideals espoused by BitcoinSV, i.e. massive on-chain scaling, protocol stability and original-bitcoin-protocol implementation.


About BitcoinSV

You can learn more about BitcoinSV by visiting :

Feature Support

This library lacks, and will not implement :

  • Segregated Witness (Segwit) Transaction support
  • Schnorr Transaction Signature support
  • Check Datasig (OP_CHECKDATASIG)
  • Taproot

Current Supported features are :

  • Custom-Script Builder Interface to support novel locking/spending conditions within Script
  • Unbounded Transaction Types (creating non-standard transactions)
  • P2PKH Transaction Builder (Explicit helper to make TX assembly easier)
  • HD Key Derivation (BIP32)
  • Mnemonic Seed Support (BIP39)
  • Original Bitcoin Address format
  • A built-in Bitcoin Script Interpreter with full suport for the re-enabled Bitcoin Script OP_CODES


This library is a fork of the BitcoinJ and BitcoinJ-Cash projects. Contributor acknowledgements have been preserved in the AUTHORS file.