Jabit/dependencies.markdown

1.7 KiB

layout title permalink categories
page Dependencies /dependencies dependencies

jabit-core contains the Bitmessage context and all entities that will be used by the other modules. Whatever you do, you'll need this.

jabit-networking manages connections to the Bitmessage network. This is probably the most complicated part of the Jabit project. TODO

jabit-repositories is where the entities from core are stored. The default implementation uses JDBC to access a H2 database. It should mostly be easy to use other SQL databases (I'll happily accept pull requests) but if you want to use some NoSQL database or a very restricted one (as with SQLite) you might want to create your own implementation.

jabit-cryptography-bouncy impmlements everything related to encryption, cryptographic hashes and secure random numbers. As the name suggests, it uses the Bouncycastle library.

jabit-cryptography-spongy is basically a copy of the spongy one, but using Spongycastle instead.

TODO

Add Jabit as Gradle dependency:

{% highlight groovy %} compile 'ch.dissem.jabit:jabit-core:1.0.0' {% endhighlight %}

Unless you want to implement your own, also add the following:

{% highlight groovy %} compile 'ch.dissem.jabit:jabit-networking:1.0.0' compile 'ch.dissem.jabit:jabit-repositories:1.0.0' compile 'ch.dissem.jabit:jabit-cryptography-bouncy:1.0.0' {% endhighlight %}

And if you want to import from or export to the Wallet Import Format (used by PyBitmessage) you might also want to add:

{% highlight groovy %} compile 'ch.dissem.jabit:jabit-wif:1.0.0' {% endhighlight %}

For Android clients use jabit-cryptography-spongy instead of jabit-cryptography-bouncy.