A Java binding to Networking and Cryptography library by Daniel J. Bernstein. All the hard work of making a portable NaCl API version was done by Frank Denis on libsodium and kalium was totally inspired by Tony Arcieri's work with RbNaCl.
- JDK 6 or higher
- Apache Maven
kalium is implemented using jnr-ffi to bind the shared libraries from libsodium. For a more detailed explanation, please refer to RbNaCl's documentation.
OS X users can get libsodium via homebrew with:
brew install libsodium
Windows users will need to provide the pre-build binaries from libsodium
.
- Download
libsodium
from https://download.libsodium.org/libsodium/releases/ - Choose the version of
libsodium
you wish to use- The archives follow the following pattern: libsodium-{version}-msvc.zip
- From the archive find the artifacts compiled for your architecture and then the MSVC tool set of your choice
- For example:
v141 // these were compiled against the MSVC v141 (i.e. Visual Studio 2017)
- For example:
- Extract from the archive the
dll
library files into one of the following locations:- into the
lib
at the root of the working directory directory of your project. - into a location that is included in your
PATH
environment variable.
- into the
For example, on my Windows 10 machine with a x64 architecture:
{archive root}
└───x64
...
└───Release
...
└───v141
...
└───dynamic <- copy the library files from this locaiton.
Add as a Maven dependency at your project.
No.
Look at the libsodium docs, they are self explanatory. Or, contribute with docs.
I'm sorry but I'm completely clueless about Windows environment, but if you have any suggestions or PR changes. They will be more than welcome.
kalium is a work in progress, feedback, bug reports and patches are always welcome.