Go to the source code of this file.
|
| #define | S11 3 |
| |
| #define | S12 7 |
| |
| #define | S13 11 |
| |
| #define | S14 19 |
| |
| #define | S21 3 |
| |
| #define | S22 5 |
| |
| #define | S23 9 |
| |
| #define | S24 13 |
| |
| #define | S31 3 |
| |
| #define | S32 9 |
| |
| #define | S33 11 |
| |
| #define | S34 15 |
| |
| #define | F(x, y, z) (((x) & (y)) | ((~x) & (z))) |
| |
| #define | G(x, y, z) (((x) & (y)) | ((x) & (z)) | ((y) & (z))) |
| |
| #define | H(x, y, z) ((x) ^ (y) ^ (z)) |
| |
| #define | ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) |
| |
| #define | FF(a, b, c, d, x, s) {(a) += F ((b), (c), (d)) + (x); (a) = ROTATE_LEFT ((a), (s));} |
| |
| #define | GG(a, b, c, d, x, s) {(a) += G ((b), (c), (d)) + (x) + (UINT4)0x5a827999; (a) = ROTATE_LEFT ((a), (s));} |
| |
| #define | HH(a, b, c, d, x, s) {(a) += H ((b), (c), (d)) + (x) + (UINT4)0x6ed9eba1; (a) = ROTATE_LEFT ((a), (s));} |
| |
| #define F |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| (((x) & (y)) | ((~x) & (z))) |
| #define G |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| (((x) & (y)) | ((x) & (z)) | ((y) & (z))) |
| #define GG |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d, |
|
|
|
x, |
|
|
|
s |
|
) |
| {(a) += G ((b), (c), (d)) + (x) + (UINT4)0x5a827999; (a) = ROTATE_LEFT ((a), (s));} |
| #define H |
( |
|
x, |
|
|
|
y, |
|
|
|
z |
|
) |
| ((x) ^ (y) ^ (z)) |
| #define HH |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d, |
|
|
|
x, |
|
|
|
s |
|
) |
| {(a) += H ((b), (c), (d)) + (x) + (UINT4)0x6ed9eba1; (a) = ROTATE_LEFT ((a), (s));} |
| #define ROTATE_LEFT |
( |
|
x, |
|
|
|
n |
|
) |
| (((x) << (n)) | ((x) >> (32-(n)))) |
| unsigned long MD4_BlockChecksum |
( |
const void * |
data, |
|
|
int |
length |
|
) |
| |
| void MD4_Final |
( |
MD4_CTX * |
context, |
|
|
unsigned char |
digest[16] |
|
) |
| |