]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - echo/echo.h
Echo384/512 implemented
[avr-crypto-lib.git] / echo / echo.h
index fcb02f275e2c581a79255f07fde71942d2254b45..e930b3bf46e4843af00c40eeebde8839b5b5bf03 100644 (file)
@@ -43,6 +43,12 @@ typedef struct{
        uint16_t id;
 }echo_small_ctx_t;
 
+typedef struct{
+       uint8_t v[8*16];
+       uint8_t salt[16];
+       uint64_t counter;
+       uint16_t id;
+}echo_large_ctx_t;
 
 void echo_small_nextBlock(echo_small_ctx_t* ctx, void* block);
 void echo_small_lastBlock(echo_small_ctx_t* ctx, void* block, uint16_t length_b);
@@ -52,4 +58,12 @@ void echo256_ctx2hash(void* dest, echo_small_ctx_t* ctx);
 void echo224_init(echo_small_ctx_t* ctx);
 void echo256_init(echo_small_ctx_t* ctx);
 
+void echo_large_nextBlock(echo_large_ctx_t* ctx, void* block);
+void echo_large_lastBlock(echo_large_ctx_t* ctx, void* block, uint16_t length_b);
+void echo_large_ctx2hash(void* dest, uint16_t length_b, echo_large_ctx_t* ctx);
+void echo384_ctx2hash(void* dest, echo_large_ctx_t* ctx);
+void echo512_ctx2hash(void* dest, echo_large_ctx_t* ctx);
+void echo384_init(echo_large_ctx_t* ctx);
+void echo512_init(echo_large_ctx_t* ctx);
+
 #endif /* ECHO_H_ */