Jabit is a Bitmessage library for the Java environment, written in Kotlin. It is used by both Abit and Jabit-Server, and it shouldn’t be too hard to create your own Bitmessage client with it.
https://dissem.ch/jabit/
Christian Basler
2c4d95af2f
- deciding on the stream at creation time is just silly - it should be done based on the identities (this part is TODO) - changed NodeRegistry so it doesn't store nodes - this should help to connect faster - inventory items shouldn't be advertised to nodes that are already aware of them (issue #13) - objects shouldn't be requested more than once (issue #9) |
||
---|---|---|
demo | ||
domain | ||
gradle/wrapper | ||
networking | ||
repositories | ||
wif | ||
.gitignore | ||
.travis.yml | ||
Bitmessage.uml | ||
build.gradle | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
README.md | ||
settings.gradle |
Jabit
A Java implementation for the Bitmessage protocol. To build, use command gradle build
. Note that for some tests to run, a standard Bitmessage client needs to run on the same system, using port 8444 (the default port).
Please note that development is still heavily in progress, and I will break the database a lot until it's ready for prime time.
Security
There are most probably some security issues, me programming this thing all by myself. Jabit doesn't do anything against timing attacks yet, for example. Please feel free to use the library, report bugs and maybe even help out. I hope the code is easy to understand and work with.
Project Status
Basically, everything needed for a working Bitmessage client is there:
- Creating new identities (private addresses)
- Adding contracts and subscriptions
- Receiving broadcasts
- Receiving messages
- Sending messages and broadcasts
- Managing outgoing and incoming connections
- Initialise and manage a registry of Bitmessage network nodes
- An easy to use API
- A command line demo application built using the API