Gr-nacl: OOT module for data encryption using NaCl

Hi!

I want to present you a OOT module which provides the functionality of
the NaCl crypto library for GNU Radio. The NaCl library is a well known
library written by Daniel J. Bernstein, Tanja Lange and Peter Schwabe
[0]. Because the library is not maintained by themselves, I have chosen
the well maintained fork libsodium [1]. This fork is also used by the
crypto messenger tox (awesome project! → [2]). NaCl is also used by the
messenger Threema (smartphone app).

The features of the OOT module are: Public-key en-/decryption,
secret-key en-/decryption and key-pair (public/secret) or key (only
secret) generation. The system is based on the message API. Furthermore,
I have implemented a byte stream en-/decryption using stream ciphers.
This one uses tagged streams for processing.

If you are interested, you can check out the repo on GitHub [3]. In the
folder examples/ are flowgraphs which explain the functionality. As
well, there are unit-tests :wink: So far everything works fine.

I have no idea whether this is already done and I am not a crypto
expert, but here it is!

Greetings
Stefan

[0] http://nacl.cr.yp.to/
[1] http://doc.libsodium.org/, GitHub - jedisct1/libsodium: A modern, portable, easy to use crypto library.
[2] GitHub - irungentoo/toxcore: The future of online communications.
[3] GitHub - stwunsch/gr-nacl: GNU Radio module for data encryption using NaCl library

Very cool stuff, Stefan!

Thanks for publishing this!

Cheers,
Martin

On 18.04.2015 08:28, Stefan Wunsch wrote:

The features of the OOT module are: Public-key en-/decryption,
expert, but here it is!
Discuss-gnuradio mailing list
[email protected]
Discuss-gnuradio Info Page

a