1 /* Sha256.h -- SHA-256 Hash 2 2013-01-18 : Igor Pavlov : Public domain */ 3 4 #ifndef __CRYPTO_SHA256_H 5 #define __CRYPTO_SHA256_H 6 7 #include "7zTypes.h" 8 9 EXTERN_C_BEGIN 10 11 #define SHA256_DIGEST_SIZE 32 12 13 typedef struct 14 { 15 UInt32 state[8]; 16 UInt64 count; 17 Byte buffer[64]; 18 } CSha256; 19 20 void Sha256_Init(CSha256 *p); 21 void Sha256_Update(CSha256 *p, const Byte *data, size_t size); 22 void Sha256_Final(CSha256 *p, Byte *digest); 23 24 EXTERN_C_END 25 26 #endif 27