Crypto++ 8.9
Free C++ class library of cryptographic schemes
Classes
siphash.h File Reference

Classes for SipHash message authentication code. More...

Go to the source code of this file.

Classes

class  SipHash_Info< T_128bit >
 SipHash message authentication code information. More...
 
class  SipHash_Base< C, D, T_128bit >
 SipHash message authentication code base class. More...
 
class  SipHash< C, D, T_128bit >
 SipHash message authentication code. More...
 

Detailed Description

Classes for SipHash message authentication code.

SipHash computes a 64-bit or 128-bit message authentication code from a variable-length message and 128-bit secret key. It was designed to be efficient even for short inputs, with performance comparable to non-cryptographic hash functions.

To create a SipHash-2-4 object with a 64-bit MAC use code similar to the following.

  SecByteBlock key(16);
  prng.GenerateBlock(key, key.size());

  SipHash<2,4,false> hash(key, key.size());
  hash.Update(...);
  hash.Final(...);

To create a SipHash-2-4 object with a 128-bit MAC use code similar to the following.

  SecByteBlock key(16);
  prng.GenerateBlock(key, key.size());

  SipHash<2,4,true> hash(key, key.size());
  hash.Update(...);
  hash.Final(...);
See also
Jean-Philippe Aumasson and Daniel J. Bernstein SipHash: a fast short-input PRF
Since
Crypto++ 6.0

Definition in file siphash.h.