00001
00042 #ifndef SPH_SHA1_H__
00043 #define SPH_SHA1_H__
00044
00045 #include <stddef.h>
00046 #include "sph_types.h"
00047
00051 #define SPH_SIZE_sha1 160
00052
00063 typedef struct {
00064 #ifndef DOXYGEN_IGNORE
00065 unsigned char buf[64];
00066 sph_u32 val[5];
00067 #if SPH_64
00068 sph_u64 count;
00069 #else
00070 sph_u32 count_high, count_low;
00071 #endif
00072 #endif
00073 } sph_sha1_context;
00074
00080 void sph_sha1_init(void *cc);
00081
00090 void sph_sha1(void *cc, const void *data, size_t len);
00091
00101 void sph_sha1_close(void *cc, void *dst);
00102
00116 void sph_sha1_addbits_and_close(void *cc, unsigned ub, unsigned n, void *dst);
00117
00129 void sph_sha1_comp(const sph_u32 msg[16], sph_u32 val[5]);
00130
00131 #endif