Programming language: Java
License: Apache License 2.0
Tags: Security     Projects    
Latest version: v0.8.0

Kalium alternatives and similar libraries

Based on the "Security" category.
Alternatively, view Kalium alternatives based on common mentions on social networks and blogs.

  • Tink

    Tink is a multi-language, cross-platform, open source library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.
  • DependencyCheck

    OWASP dependency-check is a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.
  • The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
  • OpenAM

    OpenAM is an open access management solution that includes Authentication, SSO, Authorization, Federation, Entitlements and Web Services Security.
  • Topaz

    Cloud-native authorization for modern applications and APIs
  • #<Sawyer::Resource:0x00007f0fa1b68b60>

    A one-time password (HOTP/TOTP) library for Java
  • SSLContext-Kickstart

    πŸ” A lightweight high level library for configuring a http client or server based on SSLContext or other properties such as TrustManager, KeyManager or Trusted Certificates to communicate over SSL TLS for one way authentication or two way authentication provided by the SSLFactory. Support for Java, Scala and Kotlin based clients with examples. Available client examples are: Apache HttpClient, OkHttp, Spring RestTemplate, Spring WebFlux WebClient Jetty and Netty, the old and the new JDK HttpClient, the old and the new Jersey Client, Google HttpClient, Unirest, Retrofit, Feign, Methanol, Vertx, Scala client Finagle, Featherbed, Dispatch Reboot, AsyncHttpClient, Sttp, Akka, Requests Scala, Http4s Blaze, Kotlin client Fuel, http4k Kohttp and Ktor. Also gRPC, WebSocket and ElasticSearch examples are included
  • Passay

    Password policy enforcement for Java.
  • Password4j

    Java cryptographic library that supports Argon2, bcrypt, scrypt and PBKDF2 aimed to protect passwords in databases. Easy to use by design, highly customizable, secure and portable. All the implementations follow the standards and have been reviewed to perform better in the JVM.
  • Jwks RSA

    JSON Web Key Set parser.
  • OTP-Java

    A small and easy-to-use one-time password generator library for Java implementing RFC 4226 (HOTP) and RFC 6238 (TOTP).
  • SecurityBuilder

    Fluent builders with typesafe API for the JCA
  • JObfuscator

    JObfuscator is a source code obfuscator for the Java language. Protect Java source code & algorithms from hacking, cracking, reverse engineering, decompilation & technology theft.
  • jwt-java

    JSON Web Token implementation for Java according to RFC 7519. Easily create, parse and validate JSON Web Tokens using a fluent API.

Do you think we are missing an alternative of Kalium or a related project?

Add another 'Security' Library


License Maven Central Build Status Build status Say Thanks

kalium - Java binding to the Networking and Cryptography (NaCl) library

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.




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)
  • 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.

For example, on Windows 10 machine with a x64 architecture:

{archive root}
            └───dynamic <- copy the library files from this locaiton.

kalium installation

Add as a Maven dependency to your project.


Is Android supported?


Would be nice to have some documentation. Do you have some?

Look at the libsodium docs, they are self explanatory. Or, contribute with docs.

I'm experiencing some issues on Windows. Do you have any idea?

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 the effort of a really small group of people, feedback, bug reports and patches are always welcome.

*Note that all licence references and agreements mentioned in the Kalium README section above are relevant to that project's source code only.