Go to the documentation of this file.
65 #define MD4_LONG_LOG2 2
70 #define DATA_ORDER_IS_LITTLE_ENDIAN
72 #define HASH_LONG MD4_LONG
73 #define HASH_CTX MD4_CTX
74 #define HASH_CBLOCK MD4_CBLOCK
75 #define HASH_UPDATE MD4_Update
76 #define HASH_TRANSFORM MD4_Transform
77 #define HASH_FINAL MD4_Final
78 #define HASH_MAKE_STRING(c,s) do { \
80 ll=(c)->A; HOST_l2c(ll,(s)); \
81 ll=(c)->B; HOST_l2c(ll,(s)); \
82 ll=(c)->C; HOST_l2c(ll,(s)); \
83 ll=(c)->D; HOST_l2c(ll,(s)); \
85 #define HASH_BLOCK_DATA_ORDER md4_block_data_order
98 #define F(b,c,d) ((((c) ^ (d)) & (b)) ^ (d))
99 #define G(b,c,d) (((b) & (c)) | ((b) & (d)) | ((c) & (d)))
100 #define H(b,c,d) ((b) ^ (c) ^ (d))
102 #define R0(a,b,c,d,k,s,t) { \
103 a+=((k)+(t)+F((b),(c),(d))); \
106 #define R1(a,b,c,d,k,s,t) { \
107 a+=((k)+(t)+G((b),(c),(d))); \
110 #define R2(a,b,c,d,k,s,t) { \
111 a+=((k)+(t)+H((b),(c),(d))); \