libsodium for Ada - A secure cryptographic library
Latest commit cca3879 Jul 18, 2016 @jrmarino Remove obsolete extra member from crypto_generichash_blake2b_state
The padding64 member should have been removed in the previous commit.
It only aligns on 64 on 32-bit systems.
Failed to load latest commit information.
.gitattributes Add .gitattributes Jul 12, 2016
.gitignore Add C version of first testcase Jul 13, 2016
License.txt Split out libsodium bindings (ISC license) Jul 16, 2016 Add README heavily "inspired" by libsodium-delphi Jul 16, 2016
default.gpr Add random functionality Jul 14, 2016

libsodium-ada License

libsodium-ada is a set of thick Ada bindings to libsodium thick bindings to libsodium. libsodium is a portable and relatively easy to use implementation of Daniel Bernstein's fantastic NaCl library.


NaCl is a great encryption, hashing, and authentication library that is designed to make proper implementation easy and straight-forward. By using it, many of the finer details including speed-optimization are abstracted away so the programmer doesn't need to worry about them. NaCl itself is less than portable C, only targeted for *nix systems. libsodium makes the library portable, and adds additional conveniences to make the library easily standardized across multiple platforms, operating systems, and languages.

Crypto is very tricky to implement correctly. With the sodium library, you are much more likely to get it correct out of the box, by implementing solid encryption standards and practices without materially effecting performance.


The testcases in the examples directory also serve to illustrate how the bindings can be used. The original libsodium documentation library written by Frank Denis (@jedisct1) is also useful.

Requirements & Versions

libsodium-ada was tested with the 32-bit libsodium.a library version 1.0.10 built for mingw (since GNAT GPL 2016 is 32-bit). Click here for precompiled libsodium DLLs. It will also work with *nix versions.


NaCl has been released to the public domain to avoid copyright issues. Both libsodium and these bindings have been released under the ISC license.