Skip navigation links

bitcoinj 0.12 API

Package Description
The core package contains classes for network messages like Block and Transaction, peer connectivity via PeerGroup, block chain management and the Wallet class.
The crypto package contains classes that work with key derivation algorithms like scrypt (passwords to AES keys), BIP 32 hierarchies (chains of keys from a root seed), X.509 utilities for the payment protocol and other general cryptography tasks.
High level wrapper APIs around the bitcoinj building blocks.
Classes handling low level network management using either NIO (async io) or older style blocking sockets (useful for using SOCKS proxies, Tor, SSL etc).
Classes that know how to discover peers in the P2P network using DNS, IRC or DNS via Tor (orchid).
Network parameters encapsulate some of the differences between different Bitcoin networks such as the main/production network, the testnet, regtest mode, unit testing params and so on.
High level protocols that build on top of Bitcoin go here: we have the payment protocol for sending transactions from sender to receiver with metadata, and a micropayment channels implementation.
Micropayment channels allow for rapid tiny payments to be made to a third party once a channel has been set up, using some of the advanced features of the Bitcoin protocol.
The BIP70 payment protocol wraps Bitcoin transactions and adds various useful features like memos, refund addresses and authentication.
Classes for working with and executing Bitcoin script programs, as embedded in inputs and outputs.
Transaction signers know how to calculate signatures over transactions in different contexts, for example, using local private keys or fetching them from remote servers.
Block stores persist blockchain data downloaded from remote peers.
Various utilities for writing unit tests: also useful for testing your own code and apps that build on top of bitcoinj.
Parsing and handling of bitcoin: textual URIs as found in qr codes and web links.
Formatting monetary amounts, representing exchange rates, a program for loading Bitcoin Core saved block files, a class to control how bitcoinj uses threads and misc other utility classes that don't fit anywhere else.
Classes that support the Wallet, which knows how to find and save transactions relevant to a set of keys or scripts, calculate balances, and spend money: the wallet has many features and can be extended in various ways, please refer to the website for documentation on how to use it.
Skip navigation links

Copyright © 2014. All rights reserved.