MD5 Digest Functions.
More...
Data Structures |
struct | _MD5CONTEXT |
struct | MD5CONTEXT |
| MD5 context structure. More...
|
Defines |
#define | byteReverse(buf, len) |
#define | F1(x, y, z) (z ^ (x & (y ^ z))) |
#define | F2(x, y, z) F1(z, x, y) |
#define | F3(x, y, z) (x ^ y ^ z) |
#define | F4(x, y, z) (y ^ (x | ~z)) |
#define | MD5STEP(f, w, x, y, z, data, s) ( w += f(x, y, z) + data, w = w<<s | w>>(32-s), w += x ) |
Typedefs |
typedef struct _MD5CONTEXT | MD5CONTEXT |
Functions |
void | NutMD5Init (MD5CONTEXT *context) |
| Start MD5 accumulation.
|
void | NutMD5Update (MD5CONTEXT *context, uint8_t const *buf, uint32_t len) |
| Update MD5 context.
|
void | NutMD5Final (MD5CONTEXT *context, uint8_t digest[16]) |
| Final wrapup, calculate MD5 digest.
|
Detailed Description
MD5 Digest Functions.
Define Documentation
#define byteReverse |
( |
|
buf, |
|
|
|
len |
|
) |
| |
#define F1 |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| (z ^ (x & (y ^ z))) |
#define F2 |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| F1(z, x, y) |
#define F3 |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| (x ^ y ^ z) |
#define F4 |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| (y ^ (x | ~z)) |
#define MD5STEP |
( |
|
f, |
|
|
|
w, |
|
|
|
x, |
|
|
|
y, |
|
|
|
z, |
|
|
|
data, |
|
|
|
s |
|
) |
| ( w += f(x, y, z) + data, w = w<<s | w>>(32-s), w += x ) |
Typedef Documentation
Function Documentation
Start MD5 accumulation.
Start MD5 accumulation, set bit count to 0 and buffer to mysterious initialization constants. Call this function to initialize every new MD5 calculation.
- Parameters:
-
context | Points to the md5 context buffer. |
Update MD5 context.
Update context to reflect the concatenation of another data buffer.
- Parameters:
-
context | Points to the md5 context buffer. |
buf | Points to the data buffer |
len | Length of the data buffer |
References byteReverse, and memcpy().
Final wrapup, calculate MD5 digest.
Final wrapup - pad to 64-byte boundary with the bit pattern 1 0* (64-bit count of bits processed, MSB-first) Fill in the digest into digest buffer
- Parameters:
-
context | Points to the md5 context buffer. |
digest | Points to the digest buffer, which must be 16 bytes long |
References byteReverse, memcpy(), and memset().