blake2b overload (1) - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
#include "xf_security/blake2b.hpp"
void blake2b (
    hls::stream <ap_uint <64>>& msg_strm,
    hls::stream <ap_uint <128>>& msg_len_strm,
    hls::stream <ap_uint <512>>& key_strm,
    hls::stream <ap_uint <8>>& key_len_strm,
    hls::stream <ap_uint <8>>& out_len_strm,
    hls::stream <bool>& end_len_strm,
    hls::stream <ap_uint <8*64>>& digest_strm,
    hls::stream <bool>& end_digest_strm
    )

Top function of BLAKE2B.

The algorithm reference is : “The BLAKE2 Cryptographic Hash and Message Authentication Code (MAC)”. The implementation dataflows the sub-modules.

Parameters:

msg_strm The message being hashed.
msg_len_strm Message length in byte (0 <= msg_len <= 2^128).
key_strm The optional key.
key_len_strm Key length in byte (0 <= key_len <= 64).
out_len_strm Result hash value length in byte (0 < out_len < 64).
end_len_strm The flag to signal end of input message stream.
digest_strm The digest (hash value) stream.
end_digest_strm Flag to signal the end of the result.