TianoCore EDK2 master
Loading...
Searching...
No Matches
CryptSha1.c File Reference
#include "InternalCryptLib.h"
#include <openssl/sha.h>

Go to the source code of this file.

Functions

UINTN EFIAPI Sha1GetContextSize (VOID)
 
BOOLEAN EFIAPI Sha1Init (OUT VOID *Sha1Context)
 
BOOLEAN EFIAPI Sha1Duplicate (IN CONST VOID *Sha1Context, OUT VOID *NewSha1Context)
 
BOOLEAN EFIAPI Sha1Update (IN OUT VOID *Sha1Context, IN CONST VOID *Data, IN UINTN DataSize)
 
BOOLEAN EFIAPI Sha1Final (IN OUT VOID *Sha1Context, OUT UINT8 *HashValue)
 
BOOLEAN EFIAPI Sha1HashAll (IN CONST VOID *Data, IN UINTN DataSize, OUT UINT8 *HashValue)
 

Detailed Description

SHA-1 Digest Wrapper Implementation over OpenSSL.

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

Definition in file CryptSha1.c.

Function Documentation

◆ Sha1Duplicate()

BOOLEAN EFIAPI Sha1Duplicate ( IN CONST VOID *  Sha1Context,
OUT VOID *  NewSha1Context 
)

Makes a copy of an existing SHA-1 context.

If Sha1Context is NULL, then return FALSE. If NewSha1Context is NULL, then return FALSE.

Parameters
[in]Sha1ContextPointer to SHA-1 context being copied.
[out]NewSha1ContextPointer to new SHA-1 context.
Return values
TRUESHA-1 context copy succeeded.
FALSESHA-1 context copy failed.

Definition at line 78 of file CryptSha1.c.

◆ Sha1Final()

BOOLEAN EFIAPI Sha1Final ( IN OUT VOID *  Sha1Context,
OUT UINT8 *  HashValue 
)

Completes computation of the SHA-1 digest value.

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

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

Parameters
[in,out]Sha1ContextPointer to the SHA-1 context.
[out]HashValuePointer to a buffer that receives the SHA-1 digest value (20 bytes).
Return values
TRUESHA-1 digest computation succeeded.
FALSESHA-1 digest computation failed.

Definition at line 163 of file CryptSha1.c.

◆ Sha1GetContextSize()

UINTN EFIAPI Sha1GetContextSize ( VOID  )

Retrieves the size, in bytes, of the context buffer required for SHA-1 hash operations.

Returns
The size, in bytes, of the context buffer required for SHA-1 hash operations.

Definition at line 22 of file CryptSha1.c.

◆ Sha1HashAll()

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

Computes the SHA-1 message digest of a input data buffer.

This function performs the SHA-1 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 SHA-1 digest value (20 bytes).
Return values
TRUESHA-1 digest computation succeeded.
FALSESHA-1 digest computation failed.
FALSEThis interface is not supported.

Definition at line 201 of file CryptSha1.c.

◆ Sha1Init()

BOOLEAN EFIAPI Sha1Init ( OUT VOID *  Sha1Context)

Initializes user-supplied memory pointed by Sha1Context as SHA-1 hash context for subsequent use.

If Sha1Context is NULL, then return FALSE.

Parameters
[out]Sha1ContextPointer to SHA-1 context being initialized.
Return values
TRUESHA-1 context initialization succeeded.
FALSESHA-1 context initialization failed.

Definition at line 46 of file CryptSha1.c.

◆ Sha1Update()

BOOLEAN EFIAPI Sha1Update ( IN OUT VOID *  Sha1Context,
IN CONST VOID *  Data,
IN UINTN  DataSize 
)

Digests the input data and updates SHA-1 context.

This function performs SHA-1 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. SHA-1 context should be already correctly initialized by Sha1Init(), and should not be finalized by Sha1Final(). Behavior with invalid context is undefined.

If Sha1Context is NULL, then return FALSE.

Parameters
[in,out]Sha1ContextPointer to the SHA-1 context.
[in]DataPointer to the buffer containing the data to be hashed.
[in]DataSizeSize of Data buffer in bytes.
Return values
TRUESHA-1 data digest succeeded.
FALSESHA-1 data digest failed.

Definition at line 115 of file CryptSha1.c.