• Ard Biesheuvel's avatar
    crypto: sha512 - implement base layer for SHA-512 · b84a2a0b
    Ard Biesheuvel authored
    To reduce the number of copies of boilerplate code throughout
    the tree, this patch implements generic glue for the SHA-512
    algorithm. This allows a specific arch or hardware implementation
    to only implement the special handling that it needs.
    The users need to supply an implementation of
      void (sha512_block_fn)(struct sha512_state *sst, u8 const *src, int blocks)
    and pass it to the SHA-512 base functions. For easy casting between the
    prototype above and existing block functions that take a 'u64 state[]'
    as their first argument, the 'state' member of struct sha512_state is
    moved to the base of the struct.
    Signed-off-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
sha512_base.h 3.19 KB