summaryrefslogtreecommitdiff
path: root/shake.h
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2019-02-13 12:16:05 -0500
committerJeffrey Walton <noloader@gmail.com>2019-02-13 12:16:05 -0500
commit8dd39d03ae03ba095e30f270329345b73efe4a41 (patch)
treeef1e6e711358e937879c038388675c3bf5e5cdce /shake.h
parent00f9c1f0eb1573366bb16f0bfed4fbbc6906afd1 (diff)
downloadcryptopp-git-8dd39d03ae03ba095e30f270329345b73efe4a41.tar.gz
Update documentation
Diffstat (limited to 'shake.h')
-rw-r--r--shake.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/shake.h b/shake.h
index d044ebb1..409779f5 100644
--- a/shake.h
+++ b/shake.h
@@ -1,8 +1,11 @@
-// shake.h - originally written and placed in the public domain by Jeffrey Walton
+// shake.h - written and placed in the public domain by Jeffrey Walton
/// \file shake.h
/// \brief Classes for SHAKE message digests
-/// \sa SHA3, SHAKE128, SHAKE256,
+/// \details The library provides byte oriented SHAKE128 and SHAKE256 using F1600.
+/// FIPS 202 allows nearly unlimited output sizes, but Crypto++ limits the output
+/// size to <tt>UINT_MAX</tt> due underlying data types.
+/// \sa Keccak, SHA3, SHAKE128, SHAKE256,
/// <a href="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf">FIPS 202,
/// SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions</a>
/// \since Crypto++ 8.1
@@ -19,7 +22,7 @@ NAMESPACE_BEGIN(CryptoPP)
/// \details SHAKE is the base class for SHAKE128 and SHAKE258.
/// Library users should instantiate a derived class, and only use SHAKE
/// as a base class reference or pointer.
-/// \sa SHA3, SHAKE128, SHAKE256,
+/// \sa Keccak, SHA3, SHAKE128, SHAKE256,
/// <a href="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf">FIPS 202,
/// SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions</a>
/// \since Crypto++ 8.1
@@ -76,7 +79,7 @@ public:
/// \details BlockSize() will return 0 if the hash is not block based
/// or does not have an equivalent block size. For example, Keccak
/// and SHA-3 do not have a block size, but they do have an equivalent
- /// block size called rate expressed as <tt>r</tt>.
+ /// to block size called rate expressed as <tt>r</tt>.
unsigned int BlockSize() const { return BLOCKSIZE; }
private:
@@ -89,6 +92,12 @@ private:
};
/// \brief SHAKE128 message digest
+/// \details The library provides byte oriented SHAKE128 using F1600.
+/// FIPS 202 allows nearly unlimited output sizes, but Crypto++ limits
+/// the output size to <tt>UINT_MAX</tt> due underlying data types.
+/// \sa Keccak, SHA3, SHAKE256,
+/// <a href="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf">FIPS 202,
+/// SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions</a>
/// \since Crypto++ 8.1
class SHAKE128 : public SHAKE_Final<128>
{
@@ -105,6 +114,12 @@ public:
};
/// \brief SHAKE256 message digest
+/// \details The library provides byte oriented SHAKE256 using F1600.
+/// FIPS 202 allows nearly unlimited output sizes, but Crypto++ limits
+/// the output size to <tt>UINT_MAX</tt> due underlying data types.
+/// \sa Keccak, SHA3, SHAKE128,
+/// <a href="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf">FIPS 202,
+/// SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions</a>
/// \since Crypto++ 8.1
class SHAKE256 : public SHAKE_Final<256>
{