1/* public api for steve reid's public domain SHA-1 implementation */ 2/* this file is in the public domain */ 3 4#pragma once 5 6#include "Platform.h" 7 8struct SHA1_CTX 9{ 10 uint32_t state[5]; 11 uint32_t count[2]; 12 uint8_t buffer[64]; 13}; 14 15#define SHA1_DIGEST_SIZE 20 16 17void SHA1_Init(SHA1_CTX* context); 18void SHA1_Update(SHA1_CTX* context, const uint8_t* data, const size_t len); 19void SHA1_Final(SHA1_CTX* context, uint8_t digest[SHA1_DIGEST_SIZE]); 20 21void sha1_32a ( const void * key, int len, uint32_t seed, void * out );