Developer Reference

Contents

mbx_sm3_update_mb16

Digests the current streams of input messages with the specified length.

Syntax

mbx_status16 mbx_sm3_update_mb16( const int8u *
pa_msg[16]
, int
len[16]
, SM3_CTX_mb16*
p_state
);
Include Files
crypto_mb/sm3.h
Parameters
pa_msg
Array of pointers to the buffers containing parts of the whole messages.
len
Array of lengths of the actual parts of the messages in bytes.
p_state
Pointer to the SM3_CTX_mb16 context.
Description
The function digests the current streams of input messages passed by
pa_msg
parameter. The specified messages lengths are passed through
len
array. You can call the function several times with the same
p_state
to produce intermediate hashes values.
The function integrates the previous partial blocks placed in the internal buffer of the
SM3_CTX_mb16
context with the input messages streams. Then, produces intermediate hashes values if the summary lengths are bigger than SM3 block size. The remainder of the data, which is not a multiple of the SM3 block size, is added to the internal buffer for the further hashing.
Return Values
The
mbx_sm3_update_mb16
function returns the status the indicates whether the operation completed successfully or not. The status value of 0 indicates that hash values were updated successfully. In case of non-zero status value,
MBX_GET_HIGH_PART_STS16()
and
MBX_GET_LOW_PART_STS16()
can help to get the low and high parts of the
mbx_status16
, which can be analyzed separately with
MBX_GET_STS()
call. The low part includes first eight statuses, while the high part includes remaining 8 statuses for each operation.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.