diff options
author | Niels Möller <nisse@lysator.liu.se> | 2013-04-17 16:03:15 +0200 |
---|---|---|
committer | Niels Möller <nisse@lysator.liu.se> | 2013-04-17 16:03:15 +0200 |
commit | bff365c0a1d1e10a06a08a3f9cc4ed4385197a82 (patch) | |
tree | f4483e5297dbec486cd3970f0578ab152793d775 | |
parent | e7773155c15dffa0e3a857059fe05589c82344b2 (diff) | |
download | nettle-bff365c0a1d1e10a06a08a3f9cc4ed4385197a82.tar.gz |
Document salsa20r12. Also some updates to the copyright section.
-rw-r--r-- | nettle.texinfo | 40 |
1 files changed, 27 insertions, 13 deletions
diff --git a/nettle.texinfo b/nettle.texinfo index a5429a5f..22420019 100644 --- a/nettle.texinfo +++ b/nettle.texinfo @@ -182,6 +182,11 @@ Released into the public domain. The implementation of the DES cipher is written by Dana L. How, and released under the LGPL. +@item GOSTHASH94 +The C implementation of the GOST94 message digest is written by +Aleksey Kravchenko and was ported from the rhash library by Nikos +Mavrogiannopoulos. It is released under the MIT license. + @item MD2 The implementation of MD2 is written by Andrew Kuchling, and hacked some by Andreas Sigfridsson and @value{AUTHOR}. Python Cryptography @@ -196,6 +201,10 @@ The implementation of the MD5 message digest is written by Colin Plumb. It has been hacked some more by Andrew Kuchling and @value{AUTHOR}. Released into the public domain. +@item PBKDF2 +The C implementation of PBKDF2 is based on earlier work for Shishi and +GnuTLS by Simon Josefsson. Released under the LGPL. + @item RIPEMD160 The implementation of RIPEMD160 message digest is based on the code in libgcrypt, copyright owned by the Free Software Foundation. Ported to @@ -204,12 +213,8 @@ Nettle by Andres Mejia. Released under the LGPL. @item SALSA20 The C implementation of SALSA20 is based on D. J. Bernstein's reference implementation (in the public domain), adapted to Nettle by Simon -Josefsson, and heavily modified by Niels Möller. Assembly for x86_64 by -Niels Möller. Released under the LGPL. - -@item PBKDF2 -The C implementation of PBKDF2 is based on earlier work for Shishi and -GnuTLS by Simon Josefsson. Released under the LGPL. +Josefsson, and heavily modified by Niels Möller. Assembly for x86_64 and +ARM by Niels Möller. Released under the LGPL. @item SERPENT The implementation of the SERPENT cipher is based on the code in libgcrypt, @@ -220,8 +225,8 @@ x86_64 by Niels Möller. Released under the LGPL. @item SHA1 The C implementation of the SHA1 message digest is written by Peter Gutmann, and hacked some more by Andrew Kuchling and @value{AUTHOR}. -Released into the public domain. Assembler for x86 by @value{AUTHOR}, -released under the LGPL. +Released into the public domain. Assembler for x86, x86_64 and ARM by +@value{AUTHOR}, released under the LGPL. @item SHA2 Written by @value{AUTHOR}, using Peter Gutmann's SHA1 code as a model. @@ -230,15 +235,13 @@ Released under the LGPL. @item SHA3 Written by @value{AUTHOR}. Released under the LGPL. -@item GOSTHASH94 -The C implementation of the GOST94 message digest is written by -Aleksey Kravchenko and was ported from the rhash library by Nikos -Mavrogiannopoulos. It is released under the MIT license. - @item TWOFISH The implementation of the TWOFISH cipher is written by Ruud de Rooij. Released under the LGPL. +@item UMAC +Written by @value{AUTHOR}. Released under the LGPL. + @item RSA Written by @value{AUTHOR}, released under the LGPL. Uses the GMP library for bignum operations. @@ -1564,7 +1567,18 @@ Encrypts or decrypts the data of a message, using salsa20. When a message is encrypted using a sequence of calls to @code{salsa20_crypt}, all but the last call @emph{must} use a length that is a multiple of @code{SALSA20_BLOCK_SIZE}. +@end deftypefun + +The full salsa20 cipher uses 20 rounds of mixing. Variants of Salsa20 +with fewer rounds are possible, and the 12-round variant is specified by +eSTREAM, see @url{http://www.ecrypt.eu.org/stream/finallist.html}. +Nettle calls this variant @code{salsa20r12}. It uses the same context +struct and key setup as the full salsa20 cipher, but a separate function +for encryption and decryption. +@deftypefun void salsa20r12_crypt (struct salsa20_ctx *@var{ctx}, unsigned @var{length}, uint8_t *@var{dst}, const uint8_t *@var{src}) +Encrypts or decrypts the data of a message, using salsa20 reduced to 12 +rounds. @end deftypefun @subsection SERPENT |