md5.cpp File Reference
#include "md5.h"
#include <memory.h>
|
Defines |
#define | S11 7 |
#define | S12 12 |
#define | S13 17 |
#define | S14 22 |
#define | S21 5 |
#define | S22 9 |
#define | S23 14 |
#define | S24 20 |
#define | S31 4 |
#define | S32 11 |
#define | S33 16 |
#define | S34 23 |
#define | S41 6 |
#define | S42 10 |
#define | S43 15 |
#define | S44 21 |
#define | F(x, y, z) (((x) & (y)) | ((~x) & (z))) |
#define | G(x, y, z) (((x) & (z)) | ((y) & (~z))) |
#define | H(x, y, z) ((x) ^ (y) ^ (z)) |
#define | I(x, y, z) ((y) ^ ((x) | (~z))) |
#define | ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) |
#define | FF(a, b, c, d, x, s, ac) |
#define | GG(a, b, c, d, x, s, ac) |
#define | HH(a, b, c, d, x, s, ac) |
#define | II(a, b, c, d, x, s, ac) |
Functions |
void | MD5Init (MD5_CTX *context) |
void | MD5Update (MD5_CTX *context, unsigned char *input, unsigned int inputLen) |
void | MD5Final (unsigned char *digest, MD5_CTX *context) |
Detailed Description
md5.cpp - RSA Data Security, Inc., MD5 message-digest algorithm
Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All rights reserved.
License to copy and use this software is granted provided that it is identified as the "RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing this software or this function.
License is also granted to make and use derivative works provided that such works are identified as "derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing the derived work.
RSA Data Security, Inc. makes no representations concerning either the merchantability of this software or the suitability of this software for any particular purpose. It is provided "as is" without express or implied warranty of any kind.
These notices must be retained in any copies of any part of this documentation and/or software.
Define Documentation
#define F |
( |
x, |
|
|
y, |
|
|
z |
|
) |
(((x) & (y)) | ((~x) & (z))) |
|
#define FF |
( |
a, |
|
|
b, |
|
|
c, |
|
|
d, |
|
|
x, |
|
|
s, |
|
|
ac |
|
) |
|
|
|
Value: { \
(a) += F ((b), (c), (d)) + (x) + (UINT4)(ac); \
(a) = ROTATE_LEFT ((a), (s)); \
(a) += (b); \
}
|
#define G |
( |
x, |
|
|
y, |
|
|
z |
|
) |
(((x) & (z)) | ((y) & (~z))) |
|
#define GG |
( |
a, |
|
|
b, |
|
|
c, |
|
|
d, |
|
|
x, |
|
|
s, |
|
|
ac |
|
) |
|
|
|
Value: { \
(a) += G ((b), (c), (d)) + (x) + (UINT4)(ac); \
(a) = ROTATE_LEFT ((a), (s)); \
(a) += (b); \
}
|
#define H |
( |
x, |
|
|
y, |
|
|
z |
|
) |
((x) ^ (y) ^ (z)) |
|
#define HH |
( |
a, |
|
|
b, |
|
|
c, |
|
|
d, |
|
|
x, |
|
|
s, |
|
|
ac |
|
) |
|
|
|
Value: { \
(a) += H ((b), (c), (d)) + (x) + (UINT4)(ac); \
(a) = ROTATE_LEFT ((a), (s)); \
(a) += (b); \
}
|
#define I |
( |
x, |
|
|
y, |
|
|
z |
|
) |
((y) ^ ((x) | (~z))) |
|
#define II |
( |
a, |
|
|
b, |
|
|
c, |
|
|
d, |
|
|
x, |
|
|
s, |
|
|
ac |
|
) |
|
|
|
Value: { \
(a) += I ((b), (c), (d)) + (x) + (UINT4)(ac); \
(a) = ROTATE_LEFT ((a), (s)); \
(a) += (b); \
}
|
#define ROTATE_LEFT |
( |
x, |
|
|
n |
|
) |
(((x) << (n)) | ((x) >> (32-(n)))) |
|
|
ROTATE_LEFT rotates x left n bits. |
Function Documentation
void MD5Final |
( |
unsigned char * |
digest, |
|
|
MD5_CTX * |
context |
|
) |
|
|
|
MD5 finalization. Ends an MD5 message-digest operation, writing the the message digest and zeroizing the context. |
|
MD5 initialization. Begins an MD5 operation, writing a new context. |
void MD5Update |
( |
MD5_CTX * |
context, |
|
|
unsigned char * |
input, |
|
|
unsigned int |
inputLen |
|
) |
|
|
|
MD5 block update operation. Continues an MD5 message-digest operation, processing another message block, and updating the context. |
Generated on Tue Jun 26 17:51:44 2007 for IccProfLib by
1.3.9.1