Macros | |
#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 | lshift(x, s) ((((x)<<(s))&0xFFFFFFFF) | (((x)>>(32-(s)))&0xFFFFFFFF)) |
#define | ROUND1(a, b, c, d, k, s) a = lshift(a + F(b,c,d) + X[k], s) |
#define | ROUND2(a, b, c, d, k, s) a = lshift(a + G(b,c,d) + X[k] + 0x5A827999,s) |
#define | ROUND3(a, b, c, d, k, s) a = lshift(a + H(b,c,d) + X[k] + 0x6ED9EBA1,s) |
Functions | |
void | mdfour (unsigned char *out, const unsigned char *in, int n) |
void | mdfour_begin (struct mdfour *md) |
void | mdfour_result (struct mdfour *md, unsigned char *out) |
void | mdfour_update (struct mdfour *md, const unsigned char *in, int n) |