diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2012-11-11 14:22:56 +0100 |
---|---|---|
committer | Niels Möller <nisse@lysator.liu.se> | 2012-11-11 14:22:56 +0100 |
commit | 57fa68a34869752d049acdc37b85df0ff75a7c9d (patch) | |
tree | 2bb863850e4c3fdf48df568c5dbc973631de0c44 /nettle.texinfo | |
parent | 5ff517e289d186c42f2dc1c462ceb4915582a70c (diff) | |
download | nettle-57fa68a34869752d049acdc37b85df0ff75a7c9d.tar.gz |
Documentation of gost hash.
Diffstat (limited to 'nettle.texinfo')
-rw-r--r-- | nettle.texinfo | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/nettle.texinfo b/nettle.texinfo index b5ef14b9..ea4b1582 100644 --- a/nettle.texinfo +++ b/nettle.texinfo @@ -220,6 +220,11 @@ released under the LGPL. Written by @value{AUTHOR}, using Peter Gutmann's SHA1 code as a model. 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. @@ -711,6 +716,43 @@ This function also resets the context in the same way as @code{sha384_init}. @end deftypefun +@subsection @acronym{GOSTHASH94} + +The GOST94 or GOST R 34.11-94 hash algorithm is a Soviet-era algorithm +used in Russian government standards (see @cite{RFC 4357}). +It outputs message digests of 256 bits, or 32 octets. +Nettle defines GOSTHASH94 in @file{<nettle/gosthash94.h>}. + +@deftp {Context struct} {struct gosthash94_ctx} +@end deftp + +@defvr Constant GOSTHASH94_DIGEST_SIZE +The size of an GOSTHASH94 digest, i.e. 32. +@end defvr + +@defvr Constant GOSTHASH94_DATA_SIZE +The internal block size of GOSTHASH94, i.e., 32. +@end defvr + +@deftypefun void gosthash94_init (struct gosthash94_ctx *@var{ctx}) +Initialize the GOSTHASH94 state. +@end deftypefun + +@deftypefun void gosthash94_update (struct gosthash94_ctx *@var{ctx}, unsigned @var{length}, const uint8_t *@var{data}) +Hash some more data. +@end deftypefun + +@deftypefun void gosthash94_digest (struct gosthash94_ctx *@var{ctx}, unsigned @var{length}, uint8_t *@var{digest}) +Performs final processing and extracts the message digest, writing it +to @var{digest}. @var{length} may be smaller than +@code{GOSTHASH94_DIGEST_SIZE}, in which case only the first @var{length} +octets of the digest are written. + +This function also resets the context in the same way as +@code{gosthash94_init}. +@end deftypefun + + @subsection @code{struct nettle_hash} Nettle includes a struct including information about the supported hash @@ -735,6 +777,7 @@ The last three attributes are function pointers, of types @deftypevrx {Constant Struct} {struct nettle_hash} nettle_sha256 @deftypevrx {Constant Struct} {struct nettle_hash} nettle_sha384 @deftypevrx {Constant Struct} {struct nettle_hash} nettle_sha512 +@deftypevrx {Constant Struct} {struct nettle_hash} nettle_gosthash94 These are all the hash functions that Nettle implements. @end deftypevr |