void skein512(void *dest, uint16_t outlength_b,const void *msg, uint32_t length_b){ skein512_ctx_t ctx; skein512_init(&ctx, outlength_b); while(length_b>SKEIN512_BLOCKSIZE){ skein512_nextBlock(&ctx, msg); msg = (uint8_t*)msg + SKEIN512_BLOCKSIZE_B; length_b -= SKEIN512_BLOCKSIZE; } skein512_lastBlock(&ctx, msg, length_b); skein512_ctx2hash(dest, &ctx); }
void skein512_1024_init(skein512_ctx_t* ctx){ skein512_init(ctx, 1024); }
void skein512_512_init(skein512_ctx_t* ctx){ skein512_init(ctx, 512); }
void skein512_384_init(skein512_ctx_t* ctx){ skein512_init(ctx, 384); }
void skein512_256_init(skein512_ctx_t* ctx){ skein512_init(ctx, 256); }
void skein512_224_init(skein512_ctx_t* ctx){ skein512_init(ctx, 224); }
void skein512_160_init(skein512_ctx_t* ctx){ skein512_init(ctx, 160); }
void skein512_128_init(skein512_ctx_t* ctx){ skein512_init(ctx, 128); }