27 #ifndef POLARSSL_SHA256_H
28 #define POLARSSL_SHA256_H
34 #if defined(_MSC_VER) && !defined(EFIX64) && !defined(EFI32)
36 typedef UINT32 uint32_t;
41 #define POLARSSL_ERR_SHA256_FILE_IO_ERROR -0x0078
43 #if !defined(POLARSSL_SHA256_ALT)
58 unsigned char buffer[64];
60 unsigned char ipad[64];
61 unsigned char opad[64];
99 #include "sha256_alt.h"
114 void sha256(
const unsigned char *input,
size_t ilen,
115 unsigned char output[32],
int is224 );
126 int sha256_file(
const char *path,
unsigned char output[32],
int is224 );
137 size_t keylen,
int is224 );
173 void sha256_hmac(
const unsigned char *key,
size_t keylen,
174 const unsigned char *input,
size_t ilen,
175 unsigned char output[32],
int is224 );
void sha256_hmac_update(sha256_context *ctx, const unsigned char *input, size_t ilen)
SHA-256 HMAC process buffer.
int sha256_file(const char *path, unsigned char output[32], int is224)
Output = SHA-256( file contents )
void sha256_update(sha256_context *ctx, const unsigned char *input, size_t ilen)
SHA-256 process buffer.
void sha256(const unsigned char *input, size_t ilen, unsigned char output[32], int is224)
Output = SHA-256( input buffer )
void sha256_hmac(const unsigned char *key, size_t keylen, const unsigned char *input, size_t ilen, unsigned char output[32], int is224)
Output = HMAC-SHA-256( hmac key, input buffer )
Configuration options (set of defines)
void sha256_hmac_finish(sha256_context *ctx, unsigned char output[32])
SHA-256 HMAC final digest.
void sha256_hmac_starts(sha256_context *ctx, const unsigned char *key, size_t keylen, int is224)
SHA-256 HMAC context setup.
int sha256_self_test(int verbose)
Checkup routine.
void sha256_starts(sha256_context *ctx, int is224)
SHA-256 context setup.
void sha256_hmac_reset(sha256_context *ctx)
SHA-256 HMAC context reset.
void sha256_process(sha256_context *ctx, const unsigned char data[64])
void sha256_finish(sha256_context *ctx, unsigned char output[32])
SHA-256 final digest.
SHA-256 context structure.