Hi Everyone, I added initial support for NaCl library functions on my GitHub clone. The commit of interest is https://github.com/noloader/cryptopp/commit/4edc9b5f3d4a988d .
The NaCl port include the 25 most popular functions and primitives as detailed at https://tweetnacl.cr.yp.to/tweetnacl-20140917.pdf (Table 1 page 5). It includes x25519 for key exchange, ed25519 for signatures and the supporting functions, like crypto_box, crypto_box_open, crypto_secretbox, crypto_secretbox_open,crypto_sign, crypto_sign_open and friends. We used the TweetNacl library for several reasons. First, it was easy to work with and port. If you have had the pleasure of working with Bernstein's code an porting, you know some of the pain points. Second, it was small. The library gets its name because it fits into 100 tweets. Third, it promotes a heck of a lot of interoperability. The port is handled by a script in TestScripts/tweetnacl.sh . The script downloads the files from https://tweetnacl.cr.yp.to and then fixes them up using sed for inclusion with Crypto++ . It should be reproducible for everyone. On the TODO list are: * Add self tests * Improve documentation I have not had time to hunt down the self tests and port them (yet). The tests will be added before a merge with Wei's Master. We also need to improve the documentation. NaCl is a collection of freestanding functions in the CryptoPP::NaCl namespace. We still lack the formal integration of curve25519 so that we can use it with classes like X25519 and ED25519 based on library interfaces. That is also on the TODO list. Jeff -- You received this message because you are subscribed to "Crypto++ Users". More information about Crypto++ and this group is available at http://www.cryptopp.com and http://groups.google.com/forum/#!forum/cryptopp-users. --- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
