TianoCore EDK2 master
Loading...
Searching...
No Matches
CryptSm3Null.c File Reference
#include "InternalCryptLib.h"

Go to the source code of this file.

Functions

UINTN EFIAPI Sm3GetContextSize (VOID)
 
BOOLEAN EFIAPI Sm3Init (OUT VOID *Sm3Context)
 
BOOLEAN EFIAPI Sm3Duplicate (IN CONST VOID *Sm3Context, OUT VOID *NewSm3Context)
 
BOOLEAN EFIAPI Sm3Update (IN OUT VOID *Sm3Context, IN CONST VOID *Data, IN UINTN DataSize)
 
BOOLEAN EFIAPI Sm3Final (IN OUT VOID *Sm3Context, OUT UINT8 *HashValue)
 
BOOLEAN EFIAPI Sm3HashAll (IN CONST VOID *Data, IN UINTN DataSize, OUT UINT8 *HashValue)
 

Detailed Description

SM3 Digest Wrapper Null Implementation.

Copyright (c) 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file CryptSm3Null.c.

Function Documentation

◆ Sm3Duplicate()

BOOLEAN EFIAPI Sm3Duplicate ( IN CONST VOID *  Sm3Context,
OUT VOID *  NewSm3Context 
)

Makes a copy of an existing SM3 context.

If Sm3Context is NULL, then return FALSE. If NewSm3Context is NULL, then return FALSE. If this interface is not supported, then return FALSE.

Parameters
[in]Sm3ContextPointer to SM3 context being copied.
[out]NewSm3ContextPointer to new SM3 context.
Return values
TRUESM3 context copy succeeded.
FALSESM3 context copy failed.
FALSEThis interface is not supported.

Definition at line 66 of file CryptSm3Null.c.

◆ Sm3Final()

BOOLEAN EFIAPI Sm3Final ( IN OUT VOID *  Sm3Context,
OUT UINT8 *  HashValue 
)

Completes computation of the SM3 digest value.

This function completes SM3 hash computation and retrieves the digest value into the specified memory. After this function has been called, the SM3 context cannot be used again. SM3 context should be already correctly initialized by Sm3Init(), and should not be finalized by Sm3Final(). Behavior with invalid SM3 context is undefined.

If Sm3Context is NULL, then return FALSE. If HashValue is NULL, then return FALSE.

Parameters
[in,out]Sm3ContextPointer to the SM3 context.
[out]HashValuePointer to a buffer that receives the SM3 digest value (32 bytes).
Return values
TRUESM3 digest computation succeeded.
FALSESM3 digest computation failed.

Definition at line 127 of file CryptSm3Null.c.

◆ Sm3GetContextSize()

UINTN EFIAPI Sm3GetContextSize ( VOID  )

Retrieves the size, in bytes, of the context buffer required for SM3 hash operations.

Returns
The size, in bytes, of the context buffer required for SM3 hash operations.

Definition at line 19 of file CryptSm3Null.c.

◆ Sm3HashAll()

BOOLEAN EFIAPI Sm3HashAll ( IN CONST VOID *  Data,
IN UINTN  DataSize,
OUT UINT8 *  HashValue 
)

Computes the SM3 message digest of a input data buffer.

This function performs the SM3 message digest of a given data buffer, and places the digest value into the specified memory.

If this interface is not supported, then return FALSE.

Parameters
[in]DataPointer to the buffer containing the data to be hashed.
[in]DataSizeSize of Data buffer in bytes.
[out]HashValuePointer to a buffer that receives the SM3 digest value (32 bytes).
Return values
TRUESM3 digest computation succeeded.
FALSESM3 digest computation failed.
FALSEThis interface is not supported.

Definition at line 156 of file CryptSm3Null.c.

◆ Sm3Init()

BOOLEAN EFIAPI Sm3Init ( OUT VOID *  Sm3Context)

Initializes user-supplied memory pointed by Sm3Context as SM3 hash context for subsequent use.

If Sm3Context is NULL, then return FALSE.

Parameters
[out]Sm3ContextPointer to SM3 context being initialized.
Return values
TRUESM3 context initialization succeeded.
FALSESM3 context initialization failed.

Definition at line 41 of file CryptSm3Null.c.

◆ Sm3Update()

BOOLEAN EFIAPI Sm3Update ( IN OUT VOID *  Sm3Context,
IN CONST VOID *  Data,
IN UINTN  DataSize 
)

Digests the input data and updates SM3 context.

This function performs SM3 digest on a data buffer of the specified size. It can be called multiple times to compute the digest of long or discontinuous data streams. SM3 context should be already correctly initialized by Sm3Init(), and should not be finalized by Sm3Final(). Behavior with invalid context is undefined.

If Sm3Context is NULL, then return FALSE.

Parameters
[in,out]Sm3ContextPointer to the SM3 context.
[in]DataPointer to the buffer containing the data to be hashed.
[in]DataSizeSize of Data buffer in bytes.
Return values
TRUESM3 data digest succeeded.
FALSESM3 data digest failed.

Definition at line 95 of file CryptSm3Null.c.