Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

md5.c File Reference

#include "md5.h"
#include <string.h>

Include dependency graph for md5.c:

Go to the source code of this file.

Defines

#define T1   0xd76aa478
#define T2   0xe8c7b756
#define T3   0x242070db
#define T4   0xc1bdceee
#define T5   0xf57c0faf
#define T6   0x4787c62a
#define T7   0xa8304613
#define T8   0xfd469501
#define T9   0x698098d8
#define T10   0x8b44f7af
#define T11   0xffff5bb1
#define T12   0x895cd7be
#define T13   0x6b901122
#define T14   0xfd987193
#define T15   0xa679438e
#define T16   0x49b40821
#define T17   0xf61e2562
#define T18   0xc040b340
#define T19   0x265e5a51
#define T20   0xe9b6c7aa
#define T21   0xd62f105d
#define T22   0x02441453
#define T23   0xd8a1e681
#define T24   0xe7d3fbc8
#define T25   0x21e1cde6
#define T26   0xc33707d6
#define T27   0xf4d50d87
#define T28   0x455a14ed
#define T29   0xa9e3e905
#define T30   0xfcefa3f8
#define T31   0x676f02d9
#define T32   0x8d2a4c8a
#define T33   0xfffa3942
#define T34   0x8771f681
#define T35   0x6d9d6122
#define T36   0xfde5380c
#define T37   0xa4beea44
#define T38   0x4bdecfa9
#define T39   0xf6bb4b60
#define T40   0xbebfbc70
#define T41   0x289b7ec6
#define T42   0xeaa127fa
#define T43   0xd4ef3085
#define T44   0x04881d05
#define T45   0xd9d4d039
#define T46   0xe6db99e5
#define T47   0x1fa27cf8
#define T48   0xc4ac5665
#define T49   0xf4292244
#define T50   0x432aff97
#define T51   0xab9423a7
#define T52   0xfc93a039
#define T53   0x655b59c3
#define T54   0x8f0ccc92
#define T55   0xffeff47d
#define T56   0x85845dd1
#define T57   0x6fa87e4f
#define T58   0xfe2ce6e0
#define T59   0xa3014314
#define T60   0x4e0811a1
#define T61   0xf7537e82
#define T62   0xbd3af235
#define T63   0x2ad7d2bb
#define T64   0xeb86d391
#define ARCH_IS_BIG_ENDIAN   1
#define ROTATE_LEFT(x, n)   (((x) << (n)) | ((x) >> (32 - (n))))
#define F(x, y, z)   (((x) & (y)) | (~(x) & (z)))
#define SET(a, b, c, d, k, s, Ti)
#define G(x, y, z)   (((x) & (z)) | ((y) & ~(z)))
#define SET(a, b, c, d, k, s, Ti)
#define H(x, y, z)   ((x) ^ (y) ^ (z))
#define SET(a, b, c, d, k, s, Ti)
#define I(x, y, z)   ((y) ^ ((x) | ~(z)))
#define SET(a, b, c, d, k, s, Ti)

Functions

static void md5_process (md5_state_t *pms, const md5_byte_t *data)
void md5_init (md5_state_t *pms)
void md5_append (md5_state_t *pms, const md5_byte_t *data, int nbytes)
void md5_finish (md5_state_t *pms, md5_byte_t digest[16])


Define Documentation

#define ARCH_IS_BIG_ENDIAN   1
 

#define F x,
y,
 )     (((x) & (y)) | (~(x) & (z)))
 

#define G x,
y,
 )     (((x) & (z)) | ((y) & ~(z)))
 

#define H x,
y,
 )     ((x) ^ (y) ^ (z))
 

#define I x,
y,
 )     ((y) ^ ((x) | ~(z)))
 

#define ROTATE_LEFT x,
 )     (((x) << (n)) | ((x) >> (32 - (n))))
 

#define SET a,
b,
c,
d,
k,
s,
Ti   ) 
 

Value:

t = a + I(b,c,d) + X[k] + Ti;\
  a = ROTATE_LEFT(t, s) + b

#define SET a,
b,
c,
d,
k,
s,
Ti   ) 
 

Value:

t = a + H(b,c,d) + X[k] + Ti;\
  a = ROTATE_LEFT(t, s) + b

#define SET a,
b,
c,
d,
k,
s,
Ti   ) 
 

Value:

t = a + G(b,c,d) + X[k] + Ti;\
  a = ROTATE_LEFT(t, s) + b

#define SET a,
b,
c,
d,
k,
s,
Ti   ) 
 

Value:

t = a + F(b,c,d) + X[k] + Ti;\
  a = ROTATE_LEFT(t, s) + b

Referenced by md5_process().

#define T1   0xd76aa478
 

Definition at line 100 of file md5.c.

Referenced by md5_process().

#define T10   0x8b44f7af
 

Definition at line 109 of file md5.c.

Referenced by md5_process().

#define T11   0xffff5bb1
 

Definition at line 110 of file md5.c.

Referenced by md5_process().

#define T12   0x895cd7be
 

Definition at line 111 of file md5.c.

Referenced by md5_process().

#define T13   0x6b901122
 

Definition at line 112 of file md5.c.

Referenced by md5_process().

#define T14   0xfd987193
 

Definition at line 113 of file md5.c.

Referenced by md5_process().

#define T15   0xa679438e
 

Definition at line 114 of file md5.c.

Referenced by md5_process().

#define T16   0x49b40821
 

Definition at line 115 of file md5.c.

Referenced by md5_process().

#define T17   0xf61e2562
 

Definition at line 116 of file md5.c.

Referenced by md5_process().

#define T18   0xc040b340
 

Definition at line 117 of file md5.c.

Referenced by md5_process().

#define T19   0x265e5a51
 

Definition at line 118 of file md5.c.

Referenced by md5_process().

#define T2   0xe8c7b756
 

Definition at line 101 of file md5.c.

Referenced by md5_process().

#define T20   0xe9b6c7aa
 

Definition at line 119 of file md5.c.

Referenced by md5_process().

#define T21   0xd62f105d
 

Definition at line 120 of file md5.c.

Referenced by md5_process().

#define T22   0x02441453
 

Definition at line 121 of file md5.c.

Referenced by md5_process().

#define T23   0xd8a1e681
 

Definition at line 122 of file md5.c.

Referenced by md5_process().

#define T24   0xe7d3fbc8
 

Definition at line 123 of file md5.c.

Referenced by md5_process().

#define T25   0x21e1cde6
 

Definition at line 124 of file md5.c.

Referenced by md5_process().

#define T26   0xc33707d6
 

Definition at line 125 of file md5.c.

Referenced by md5_process().

#define T27   0xf4d50d87
 

Definition at line 126 of file md5.c.

Referenced by md5_process().

#define T28   0x455a14ed
 

Definition at line 127 of file md5.c.

Referenced by md5_process().

#define T29   0xa9e3e905
 

Definition at line 128 of file md5.c.

Referenced by md5_process().

#define T3   0x242070db
 

Definition at line 102 of file md5.c.

Referenced by md5_process().

#define T30   0xfcefa3f8
 

Definition at line 129 of file md5.c.

Referenced by md5_process().

#define T31   0x676f02d9
 

Definition at line 130 of file md5.c.

Referenced by md5_process().

#define T32   0x8d2a4c8a
 

Definition at line 131 of file md5.c.

Referenced by md5_process().

#define T33   0xfffa3942
 

Definition at line 132 of file md5.c.

Referenced by md5_process().

#define T34   0x8771f681
 

Definition at line 133 of file md5.c.

Referenced by md5_process().

#define T35   0x6d9d6122
 

Definition at line 134 of file md5.c.

Referenced by md5_process().

#define T36   0xfde5380c
 

Definition at line 135 of file md5.c.

Referenced by md5_process().

#define T37   0xa4beea44
 

Definition at line 136 of file md5.c.

Referenced by md5_process().

#define T38   0x4bdecfa9
 

Definition at line 137 of file md5.c.

Referenced by md5_process().

#define T39   0xf6bb4b60
 

Definition at line 138 of file md5.c.

Referenced by md5_process().

#define T4   0xc1bdceee
 

Definition at line 103 of file md5.c.

Referenced by md5_process().

#define T40   0xbebfbc70
 

Definition at line 139 of file md5.c.

Referenced by md5_process().

#define T41   0x289b7ec6
 

Definition at line 140 of file md5.c.

Referenced by md5_process().

#define T42   0xeaa127fa
 

Definition at line 141 of file md5.c.

Referenced by md5_process().

#define T43   0xd4ef3085
 

Definition at line 142 of file md5.c.

Referenced by md5_process().

#define T44   0x04881d05
 

Definition at line 143 of file md5.c.

Referenced by md5_process().

#define T45   0xd9d4d039
 

Definition at line 144 of file md5.c.

Referenced by md5_process().

#define T46   0xe6db99e5
 

Definition at line 145 of file md5.c.

Referenced by md5_process().

#define T47   0x1fa27cf8
 

Definition at line 146 of file md5.c.

Referenced by md5_process().

#define T48   0xc4ac5665
 

Definition at line 147 of file md5.c.

Referenced by md5_process().

#define T49   0xf4292244
 

Definition at line 148 of file md5.c.

Referenced by md5_process().

#define T5   0xf57c0faf
 

Definition at line 104 of file md5.c.

Referenced by md5_process().

#define T50   0x432aff97
 

Definition at line 149 of file md5.c.

Referenced by md5_process().

#define T51   0xab9423a7
 

Definition at line 150 of file md5.c.

Referenced by md5_process().

#define T52   0xfc93a039
 

Definition at line 151 of file md5.c.

Referenced by md5_process().

#define T53   0x655b59c3
 

Definition at line 152 of file md5.c.

Referenced by md5_process().

#define T54   0x8f0ccc92
 

Definition at line 153 of file md5.c.

Referenced by md5_process().

#define T55   0xffeff47d
 

Definition at line 154 of file md5.c.

Referenced by md5_process().

#define T56   0x85845dd1
 

Definition at line 155 of file md5.c.

Referenced by md5_process().

#define T57   0x6fa87e4f
 

Definition at line 156 of file md5.c.

Referenced by md5_process().

#define T58   0xfe2ce6e0
 

Definition at line 157 of file md5.c.

Referenced by md5_process().

#define T59   0xa3014314
 

Definition at line 158 of file md5.c.

Referenced by md5_process().

#define T6   0x4787c62a
 

Definition at line 105 of file md5.c.

Referenced by md5_process().

#define T60   0x4e0811a1
 

Definition at line 159 of file md5.c.

Referenced by md5_process().

#define T61   0xf7537e82
 

Definition at line 160 of file md5.c.

Referenced by md5_process().

#define T62   0xbd3af235
 

Definition at line 161 of file md5.c.

Referenced by md5_process().

#define T63   0x2ad7d2bb
 

Definition at line 162 of file md5.c.

Referenced by md5_process().

#define T64   0xeb86d391
 

Definition at line 163 of file md5.c.

Referenced by md5_process().

#define T7   0xa8304613
 

Definition at line 106 of file md5.c.

Referenced by md5_process().

#define T8   0xfd469501
 

Definition at line 107 of file md5.c.

Referenced by md5_process().

#define T9   0x698098d8
 

Definition at line 108 of file md5.c.

Referenced by md5_process().


Function Documentation

void md5_append md5_state_t pms,
const md5_byte_t data,
int  nbytes
 

Definition at line 334 of file md5.c.

References md5_state_s::buf, md5_state_s::count, and md5_process().

Referenced by EvaUtil::doMd5(), and md5_finish().

Here is the call graph for this function:

void md5_finish md5_state_t pms,
md5_byte_t  digest[16]
 

Definition at line 372 of file md5.c.

References md5_state_s::abcd, md5_state_s::count, and md5_append().

Referenced by EvaUtil::doMd5().

Here is the call graph for this function:

void md5_init md5_state_t pms  ) 
 

Definition at line 324 of file md5.c.

References md5_state_s::abcd, and md5_state_s::count.

Referenced by EvaUtil::doMd5().

static void md5_process md5_state_t pms,
const md5_byte_t data
[static]
 

Definition at line 166 of file md5.c.

References md5_state_s::abcd, SET, T1, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T2, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T3, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39, T4, T40, T41, T42, T43, T44, T45, T46, T47, T48, T49, T5, T50, T51, T52, T53, T54, T55, T56, T57, T58, T59, T6, T60, T61, T62, T63, T64, T7, T8, and T9.

Referenced by md5_append().


Generated on Mon May 15 20:49:26 2006 for libeva by  doxygen 1.4.4