Joachim Strömbergson joachim@secworks.se writes:
(1) The K table is not zero extended. This just makes the table look weird:
I'll add a %08lx format to shadata.c.
(3) The SHA-224 H0-table refers to the _SHA256_DIGEST_LENGTH. This imho should be a separate define _SHA224_DIGEST_LENGTH. Yes, it is the same length in practice but it looks weird
Maybe this constant is misnamed. It's the size of the *internal* state, which for sha224 (and sha384) is unrelated to the output digest size. It's defined in the public sha2.h header only because it's the size of the state array in struct sha256_ctx. And a separate define for sha224 makes little sense, because there is no separate struct sha224_ctx, it's just a #define alias for sha256_ctx.
Regards, /Niels