1#ifndef SHA1_H
2#define SHA1_H
3
4/*
5 SHA-1 in C
6 By Steve Reid <steve@edmweb.com>
7 100% Public Domain
8 */
9
10#include "stdint.h"
11
12#if defined(__cplusplus)
13extern "C" {
14#endif
15
16typedef struct
17{
18 uint32_t state[5];
19 uint32_t count[2];
20 unsigned char buffer[64];
21} SHA1_CTX;
22
23void SHA1Transform(
24 uint32_t state[5],
25 const unsigned char buffer[64]
26 );
27
28void SHA1Init(
29 SHA1_CTX * context
30 );
31
32void SHA1Update(
33 SHA1_CTX * context,
34 const unsigned char *data,
35 uint32_t len
36 );
37
38void SHA1Final(
39 unsigned char digest[20],
40 SHA1_CTX * context
41 );
42
43void SHA1(
44 char *hash_out,
45 const char *str,
46 uint32_t len);
47
48#if defined(__cplusplus)
49}
50#endif
51
52#endif /* SHA1_H */
53