| 
|   | Keccak_Final () | 
|   | Construct a Keccak-X message digest.  
  | 
|   | 
| unsigned int  | BlockSize () const | 
|   | Provides the block size of the compression function.  
  | 
|   | 
| std::string  | AlgorithmName () const | 
|   | Provides the name of this algorithm.  
  | 
|   | 
| unsigned int  | DigestSize () const | 
|   | Provides the digest size of the hash.  
  | 
|   | 
| unsigned int  | OptimalDataAlignment () const | 
|   | Provides input and output data alignment for optimal performance.  
  | 
|   | 
| void  | Update (const byte *input, size_t length) | 
|   | Updates a hash with additional input.  
  | 
|   | 
| void  | Restart () | 
|   | Restart the hash.  
  | 
|   | 
| void  | TruncatedFinal (byte *hash, size_t size) | 
|   | Computes the hash of the current message.  
  | 
|   | 
| HashTransformation &  | Ref () | 
|   | Provides a reference to this object.  
  | 
|   | 
| virtual byte *  | CreateUpdateSpace (size_t &size) | 
|   | Request space which can be written into by the caller.  
  | 
|   | 
| virtual void  | Final (byte *digest) | 
|   | Computes the hash of the current message.  
  | 
|   | 
| unsigned int  | TagSize () const | 
|   | Provides the tag size of the hash.  
  | 
|   | 
| virtual unsigned int  | OptimalBlockSize () const | 
|   | Provides the input block size most efficient for this hash.  
  | 
|   | 
| virtual void  | CalculateDigest (byte *digest, const byte *input, size_t length) | 
|   | Updates the hash with additional input and computes the hash of the current message.  
  | 
|   | 
| virtual bool  | Verify (const byte *digest) | 
|   | Verifies the hash of the current message.  
  | 
|   | 
| virtual bool  | VerifyDigest (const byte *digest, const byte *input, size_t length) | 
|   | Updates the hash with additional input and verifies the hash of the current message.  
  | 
|   | 
| virtual void  | CalculateTruncatedDigest (byte *digest, size_t digestSize, const byte *input, size_t length) | 
|   | Updates the hash with additional input and computes the hash of the current message.  
  | 
|   | 
| virtual bool  | TruncatedVerify (const byte *digest, size_t digestLength) | 
|   | Verifies the hash of the current message.  
  | 
|   | 
| virtual bool  | VerifyTruncatedDigest (const byte *digest, size_t digestLength, const byte *input, size_t length) | 
|   | Updates the hash with additional input and verifies the hash of the current message.  
  | 
|   | 
|   | Algorithm (bool checkSelfTestStatus=true) | 
|   | Interface for all crypto algorithms.  
  | 
|   | 
| virtual std::string  | AlgorithmProvider () const | 
|   | Retrieve the provider of this algorithm.  
  | 
|   | 
| virtual Clonable *  | Clone () const | 
|   | Copies this object.  
  | 
|   | 
template<unsigned int T_DigestSize>
class Keccak_Final< T_DigestSize >
Keccak message digest template. 
- Template Parameters
 - 
  
    | T_DigestSize | the size of the digest, in bytes  | 
  
   
- Since
 - Crypto++ 6.0 
 
Definition at line 72 of file keccak.h.
 
template<unsigned int T_DigestSize> 
  
  
      
        
          | unsigned int Keccak_Final< T_DigestSize >::BlockSize  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inlinevirtual   | 
  
 
Provides the block size of the compression function. 
- Returns
 - block size of the compression function, in bytes
 
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 r. 
Reimplemented from HashTransformation.
Definition at line 89 of file keccak.h.
 
 
template<unsigned int T_DigestSize> 
  
  
      
        
          | std::string Keccak_Final< T_DigestSize >::AlgorithmName  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inlinevirtual   | 
  
 
Provides the name of this algorithm. 
- Returns
 - the standard algorithm name
 
The standard algorithm name can be a name like AES or AES/GCM. Some algorithms do not have standard names yet. For example, there is no standard algorithm name for Shoup's ECIES. 
- Note
 - AlgorithmName is not universally implemented yet. 
 
Reimplemented from Algorithm.
Definition at line 91 of file keccak.h.