diff options
Diffstat (limited to 'static/netbsd/man3/SHAKE.3')
| -rw-r--r-- | static/netbsd/man3/SHAKE.3 | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/static/netbsd/man3/SHAKE.3 b/static/netbsd/man3/SHAKE.3 new file mode 100644 index 00000000..694b58b6 --- /dev/null +++ b/static/netbsd/man3/SHAKE.3 @@ -0,0 +1,114 @@ +.\" $NetBSD: SHAKE.3,v 1.1 2017/11/30 16:00:48 wiz Exp $ +.\" +.\" Copyright (c) 2015 Taylor R. Campbell +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 14, 2015 +.Dt SHAKE 3 +.Os +.Sh NAME +.Nm SHAKE +.Nd NIST FIPS PUB 202: SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions +.Sh SYNOPSIS +.In sha3.h +.Ft void +.Fn SHAKE128_Init "SHAKE128_CTX *ctx" +.Ft void +.Fn SHAKE128_Update "SHAKE128_CTX *ctx" "const uint8_t *buf" "size_t len" +.Ft void +.Fn SHAKE128_Final "uint8_t *output[]" "size_t outlen" "SHAKE128_CTX *ctx" +.Ft void +.Fn SHAKE256_Init "SHAKE256_CTX *ctx" +.Ft void +.Fn SHAKE256_Update "SHAKE256_CTX *ctx" "const uint8_t *buf" "size_t len" +.Ft void +.Fn SHAKE256_Final "uint8_t *output[]" "size_t outlen" "SHAKE256_CTX *ctx" +.Sh DESCRIPTION +The +.Nm +functions implement the extendable-output functions of the NIST SHA-3 +standard, FIPS PUB 202. +The +.Nm +functions absorb an arbitrary-length message m and yield an +arbitrary-length output SHAKE128(m) or SHAKE256(m), truncated to a +specified number of octets. +.Pp +Before using the +.Nm +functions, applications should first call +.Xr SHA3_Selftest 3 +and confirm that it succeeded. +.Pp +Only the +.Nm SHAKE128 +functions are specified in detail; the +.Nm SHAKE256 +functions are analogous. +.Pp +The caller must allocate memory for a +.Vt SHAKE128_CTX +object to hold the state of a SHAKE128 computation over a message. +.Vt SHAKE128_CTX +objects may be copied or relocated in memory. +.Bl -tag -width abcd +.It Fn SHAKE128_Init "ctx" +Initialize a SHAKE128 context. +Must be done before any other operations on +.Fa ctx . +.It Fn SHAKE128_Update "ctx" "data" "len" +Append +.Fa len +octets at +.Fa data +to the message. +.It Fn SHAKE128_Final "output" "outlen" "ctx" +Store at +.Fa output +the first +.Fa outlen +octets of the SHAKE128 output for the message obtained by concatenating +all prior inputs to +.Fn SHAKE128_Update +on +.Fa ctx . +.Pp +Subsequent use of +.Fa ctx +is not allowed, unless it is reinitialized with +.Fn SHAKE128_Init . +.El +.Sh SEE ALSO +.Xr keccak 3 , +.Xr sha3 3 , +.Xr SHA3_Selftest 3 +.Sh STANDARDS +.Rs +.%A National Institute of Standards and Technology +.%T SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions +.%O FIPS PUB 202 +.%D August 2015 +.Re +.Sh AUTHORS +.An Taylor R Campbell Aq campbell+sha3@mumble.net |
