123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #ifndef _SHA1_H
- #define _SHA1_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- #ifndef _STD_TYPES
- #define _STD_TYPES
- #define uchar unsigned char
- #define uint unsigned int
- #define ulong unsigned long int
- #endif
- typedef struct
- {
- ulong total[2];
- ulong state[5];
- uchar buffer[64];
- }
- sha1_context;
- /*
- * Core SHA-1 functions
- */
- void sha1_starts( sha1_context *ctx );
- void sha1_update( sha1_context *ctx, uchar *input, uint length );
- void sha1_finish( sha1_context *ctx, uchar digest[20] );
- /*
- * Output SHA-1(file contents), returns 0 if successful.
- */
- int sha1_file( char *filename, uchar digest[20] );
- /*
- * Output SHA-1(buf)
- */
- void sha1_csum( uchar *buf, uint buflen, uchar digest[20] );
- /*
- * Output HMAC-SHA-1(key,buf)
- */
- void sha1_hmac( uchar *key, uint keylen, uchar *buf, uint buflen,
- uchar digest[20] );
- /*
- * Checkup routine
- */
- int sha1_self_test( void );
- #ifdef __cplusplus
- }
- #endif
- #endif /* sha1.h */
|