2019-02-03 16:26:45 +00:00
|
|
|
#ifndef SHA1_H
|
|
|
|
#define SHA1_H
|
|
|
|
|
|
|
|
/*
|
|
|
|
SHA-1 in C
|
|
|
|
By Steve Reid <steve@edmweb.com>
|
|
|
|
100% Public Domain
|
|
|
|
*/
|
|
|
|
|
2019-02-04 08:31:54 +00:00
|
|
|
#include "type.h"
|
2019-02-03 16:26:45 +00:00
|
|
|
#include "stdint.h"
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
uint32_t state[5];
|
|
|
|
uint32_t count[2];
|
|
|
|
unsigned char buffer[64];
|
|
|
|
} SHA1_CTX;
|
|
|
|
|
|
|
|
void SHA1Transform(
|
|
|
|
uint32_t state[5],
|
|
|
|
const unsigned char buffer[64]
|
|
|
|
);
|
|
|
|
|
|
|
|
void SHA1Init(
|
|
|
|
SHA1_CTX * context
|
|
|
|
);
|
|
|
|
|
|
|
|
void SHA1Update(
|
|
|
|
SHA1_CTX * context,
|
|
|
|
const unsigned char *data,
|
|
|
|
uint32_t len
|
|
|
|
);
|
|
|
|
|
|
|
|
void SHA1Final(
|
|
|
|
unsigned char digest[20],
|
|
|
|
SHA1_CTX * context
|
|
|
|
);
|
|
|
|
|
|
|
|
void SHA1(
|
|
|
|
char *hash_out,
|
|
|
|
const char *str,
|
|
|
|
int len);
|
|
|
|
|
2019-02-11 04:40:39 +00:00
|
|
|
void SHA1_Easy(string &hexresult, string &str);
|
2019-02-04 08:31:54 +00:00
|
|
|
|
2019-02-03 16:26:45 +00:00
|
|
|
#endif /* SHA1_H */
|