DTS Application Library  0.2.3
Application library containing referenced objects and interfaces to common libraries
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
SHA2-512 Hashing and digest functions

SHA2-512 Hashing checking and HMAC Functions. More...

Functions

void sha512sum2 (unsigned char *buff, const void *data, unsigned long len, const void *data2, unsigned long len2)
 Calculate the SHA2-512 hash accross 2 data chunks. More...
 
void sha512sum (unsigned char *buff, const void *data, unsigned long len)
 Calculate the SHA2-512 hash. More...
 
int sha512cmp (unsigned char *digest1, unsigned char *digest2)
 Compare two SHA2-512 hashes. More...
 
void sha512hmac (unsigned char *buff, const void *data, unsigned long len, const void *key, unsigned long klen)
 Hash Message Authentication Codes (HMAC) SHA2-512. More...
 

Detailed Description

SHA2-512 Hashing checking and HMAC Functions.

Function Documentation

int sha512cmp ( unsigned char *  digest1,
unsigned char *  digest2 
)

Compare two SHA2-512 hashes.

Parameters
digest1Digest to compare.
digest2Digest to compare.
Returns
0 on equality.

Definition at line 253 of file util.c.

253  {
254  return (_digest_cmp(digest1, digest2, 64));
255 }
void sha512hmac ( unsigned char *  buff,
const void *  data,
unsigned long  len,
const void *  key,
unsigned long  klen 
)

Hash Message Authentication Codes (HMAC) SHA2-512.

Parameters
buffHMAC returned in this buffer (64 bytes).
dataData to sign.
lenLength of data.
keyKey to signwith.
klenLength of key.

Definition at line 326 of file util.c.

References sha512sum2().

326  {
327  _hmac(buff, data, len, key, klen, sha512sum2, 64);
328 }
unsigned short len
Packet length.
Definition: radius.c:52
void sha512sum2(unsigned char *buff, const void *data, unsigned long len, const void *data2, unsigned long len2)
Calculate the SHA2-512 hash accross 2 data chunks.
Definition: util.c:97
void sha512sum ( unsigned char *  buff,
const void *  data,
unsigned long  len 
)

Calculate the SHA2-512 hash.

Parameters
buffbuffer to place the hash (64 bytes).
dataFirst data chunk to calculate.
lenLength of data.

Definition at line 114 of file util.c.

References sha512sum2().

114  {
115  sha512sum2(buff, data, len, NULL, 0);
116 }
unsigned short len
Packet length.
Definition: radius.c:52
void sha512sum2(unsigned char *buff, const void *data, unsigned long len, const void *data2, unsigned long len2)
Calculate the SHA2-512 hash accross 2 data chunks.
Definition: util.c:97
void sha512sum2 ( unsigned char *  buff,
const void *  data,
unsigned long  len,
const void *  data2,
unsigned long  len2 
)

Calculate the SHA2-512 hash accross 2 data chunks.

Parameters
buffbuffer to place the hash (64 bytes).
dataFirst data chunk to calculate.
lenLength of data.
data2Second data chunk to calculate.
len2Length of data2.

Definition at line 97 of file util.c.

Referenced by sha512hmac(), and sha512sum().

97  {
98  SHA512_CTX c;
99 
100  SHA512_Init(&c);
101  SHA512_Update(&c, data, len);
102  if (data2) {
103  SHA512_Update(&c, data2, len2);
104  }
105  SHA512_Final(buff, &c);
106 }
unsigned short len
Packet length.
Definition: radius.c:52