[erlang-questions] [ANN] salt - Erlang bindings for NaCl

Jachym Holecek <>
Mon Nov 11 17:06:35 CET 2013


# Benoit Chesneau 2013-11-11:
> Where you aware of https://github.com/tonyg/erlang-nacl ? How it differs
> from it?

I became aware of it very late in the process. It could have been a good
start had I noticed it earlier.

Salt is much more complete with regards to API coverage. Erlang-nacl only
has 'box', 'secretbox', 'hash' and 'randombytes' -- missing 'sign', 'auth',
'onetimeauth', 'scalarmult', 'stream', 'verify' which are present in Salt,
and 'shorthash', 'generichash' which are not (yet) supported therein.

Salt is safer in that it correctly offloads all (potentially) blocking
operations to a background thread. With erlang-nacl, scheduler thread
could at least in principle end up being stuck in /dev/random read.

Salt also has a hard (though indirect) limit on latency of non-blocking
operations, something left for the user to worry about with erlang-nacl.

Finally, salt has something that may pass as documentation and tests,
though only on a good day. :-)

BR,
	-- Jachym


More information about the erlang-questions mailing list