APRUTIL siphash library "SipHashcd is a family of pseudorandom functions (a.k.a. keyed
hash functions) optimized for speed on short messages", designed by JeanPhilippe Aumasson and Daniel J. Bernstein. It generates a 64bit hash (or MAC) from the message and a 128bit key. See http://cr.yp.to/siphash/siphash20120620.pdf for the details, c is the number of compression rounds, d the number of finalization rounds; we also define fast implementations for c = 2 with d = 4 (aka siphash24), and c = 4 with d = 8 (aka siphash48), as recommended parameters per the authors.
More...
#include "apr.h"
Go to the source code of this file.

 APR_DECLARE (apr_uint64_t) apr_siphash(const void *src 
 Computes SipHashcd, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key. More...


 APR_DECLARE (void) apr_siphash_auth(unsigned char out[APR_SIPHASH_DSIZE] 
 Computes SipHashcd, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key, into a possibly unaligned buffer (using the little endian representation as defined by the authors for interoperabilty) usable as a MAC. More...



apr_size_t  len 

apr_size_t const unsigned char  key [APR_SIPHASH_KSIZE] 

apr_size_t const unsigned char unsigned int  c 

apr_size_t const unsigned char unsigned int unsigned int  d 

const void *  src 

APRUTIL siphash library "SipHashcd is a family of pseudorandom functions (a.k.a. keyed
hash functions) optimized for speed on short messages", designed by JeanPhilippe Aumasson and Daniel J. Bernstein. It generates a 64bit hash (or MAC) from the message and a 128bit key. See http://cr.yp.to/siphash/siphash20120620.pdf for the details, c is the number of compression rounds, d the number of finalization rounds; we also define fast implementations for c = 2 with d = 4 (aka siphash24), and c = 4 with d = 8 (aka siphash48), as recommended parameters per the authors.
#define APR_SIPHASH_DSIZE 8 
size of the siphash digest
#define APR_SIPHASH_KSIZE 16 
APR_DECLARE 
( 
apr_uint64_t 
 ) 
const 
Computes SipHashcd, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key.
Computes SipHash48, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key.
Computes SipHash24, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key.
 Parameters

src  The message 
len  The length of the message 
key  The secret key 
c  The number of compression rounds 
d  The number of finalization rounds 
 Returns
 The hash value as a 64bit unsigned integer
 Parameters

src  The message to hash 
len  The length of the message 
key  The secret key 
 Returns
 The hash value as a 64bit unsigned integer
 Parameters

src  The message 
len  The length of the message 
key  The secret key 
 Returns
 The hash value as a 64bit unsigned integer
Computes SipHashcd, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key, into a possibly unaligned buffer (using the little endian representation as defined by the authors for interoperabilty) usable as a MAC.
Computes SipHash48, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key, into a possibly unaligned buffer (using the little endian representation as defined by the authors for interoperabilty) usable as a MAC.
Computes SipHash24, producing a 64bit (APR_SIPHASH_DSIZE) hash from a message and a 128bit (APR_SIPHASH_KSIZE) secret key, into a possibly unaligned buffer (using the little endian representation as defined by the authors for interoperabilty) usable as a MAC.
 Parameters

out  The output buffer (or MAC) 
src  The message 
len  The length of the message 
key  The secret key 
c  The number of compression rounds 
d  The number of finalization rounds 
 Returns
 The hash value as a 64bit unsigned integer
 Parameters

out  The output buffer (or MAC) 
src  The message 
len  The length of the message 
key  The secret key 
 Returns
 The hash value as a 64bit unsigned integer