X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=sha256.h;h=5f2f275c5e8353eaa196f22e0012c594a059a92e;hb=bddd3069b50823af3bc567f073f574dff74d416c;hp=80970ff3a9f03cf1bbc02ff24f8424a8947728e9;hpb=3c995d0a8faeb9d37927d48e20fc45d839e066ea;p=avr-crypto-lib.git diff --git a/sha256.h b/sha256.h index 80970ff..5f2f275 100644 --- a/sha256.h +++ b/sha256.h @@ -1,8 +1,9 @@ /** - * File: sha256.h - * Author: Daniel Otte - * Date: 16.05.2006 - * License: GPL + * \file sha256-asm.h + * \author Daniel Otte + * \date 2006-05-16 + * \par License + * GPL * */ @@ -18,6 +19,10 @@ #define SHA256_HASH_BITS 256 #define SHA256_BLOCK_BITS 512 +/** + * \brief sha256 context type + * + */ typedef struct { uint32_t h[8]; uint64_t length; @@ -26,10 +31,15 @@ typedef struct { typedef uint8_t sha256_hash_t[SHA256_HASH_BITS/8]; void sha256_init(sha256_ctx_t *state); + void sha256_nextBlock (sha256_ctx_t *state, void* block); void sha256_lastBlock(sha256_ctx_t *state, void* block, uint16_t length); void sha256_ctx2hash(sha256_hash_t *dest, sha256_ctx_t *state); + +/* + * length in bits! + */ void sha256(sha256_hash_t *dest, void* msg, uint32_t length); uint32_t change_endian32(uint32_t x);