<p>As I understand it, BitsOfProof is an enterprise level implementation of the full bitcoind client, including downloading the full blockchain and supporting a full array of features from the main client.</p>

<p>BitcoinJ is a java library that supports building a thinner client (downloads headers instead of full block chain) allowing for building bitcoin features into a memory or storage restricted environment. </p>

CC BY-SA 3.0
2013-06-17T17:26:54.817Z
Doesn't bitcoinj support full mode as well?
ripper234
CC BY-SA 3.0
2013-06-19T21:08:18.353Z
I do believe there is experimental support for the full blockchain in bitcoinj.
Jason Southwell
CC BY-SA 3.0
2013-06-16T06:10:20.620Z
2013-06-16T06:10:20.620Z
Jason Southwell
<p>There are lots of differences in features supported, but the crucial difference is the architecture: Embedded vs. Client-Server Bitcoin Protocol Node and Wallet.</p>

<p>BitcoinJ is a Java library to embed a Simplified or Full Verifying Bitcoin Node and a Wallet into your application.</p>

<p>The Bits of Proof Enterprise Bitcoin Server is a configurable Full Verifying Bitcoin Node written in Java. The server process is accessible through a message bus for client applications and extensions. Several layers and flavors of client libraries are available, such as: STOMP, Java, REST. The Wallet is implemented in the client library, therefore a server process can serve several unrelated applications and distinct Wallets. Several server instances might run in a load balanced configuration serving clients through a common bus. The company Bits of Proof offers commercial support and hosts server instances.</p>

CC BY-SA 3.0
2013-06-19T15:57:36.367Z
2013-06-19T15:57:36.367Z
Tamas Blummer
<p>bitcoinj is a bitcoin library, bitsofproof is a full server (standalone 'exe').</p>

<p>Beyond the above - can anyone elaborate on the difference between them? What problems they were designed to solve, their documentation, maturity level?</p>

<p>Is there an overlap between them (in intended usage)?</p>

<bitcoinj>
What is the difference between bitcoinj and BitsOfProof?
ripper234
# What is the difference between bitcoinj and BitsOfProof?

(Asked by: username_0 on 2013-06-15)

bitcoinj is a bitcoin library, bitsofproof is a full server (standalone 'exe').

Beyond the above - can anyone elaborate on the difference between them? What problems they were designed to solve, their documentation, maturity level?

Is there an overlap between them (in intended usage)?

**Tags:** bitcoinj


---

## 2 answers

### Answer by username_2 on 2013-06-19. Score: 5 | Accepted answer

There are lots of differences in features supported, but the crucial difference is the architecture: Embedded vs. Client-Server Bitcoin Protocol Node and Wallet.

BitcoinJ is a Java library to embed a Simplified or Full Verifying Bitcoin Node and a Wallet into your application.

The Bits of Proof Enterprise Bitcoin Server is a configurable Full Verifying Bitcoin Node written in Java. The server process is accessible through a message bus for client applications and extensions. Several layers and flavors of client libraries are available, such as: STOMP, Java, REST. The Wallet is implemented in the client library, therefore a server process can serve several unrelated applications and distinct Wallets. Several server instances might run in a load balanced configuration serving clients through a common bus. The company Bits of Proof offers commercial support and hosts server instances.


---

### Answer by username_1 on 2013-06-16. Score: 2

As I understand it, BitsOfProof is an enterprise level implementation of the full bitcoind client, including downloading the full blockchain and supporting a full array of features from the main client.

BitcoinJ is a java library that supports building a thinner client (downloads headers instead of full block chain) allowing for building bitcoin features into a memory or storage restricted environment.

> **Comments:**
> **username_0**: Doesn't bitcoinj support full mode as well?  
> **username_1**: I do believe there is experimental support for the full blockchain in bitcoinj.  

---

