Functions | |
TPM_ALG_ID | Tpm2GetAlgoFromHashMask (VOID) |
EFI_STATUS EFIAPI | HashStart (OUT HASH_HANDLE *HashHandle) |
EFI_STATUS EFIAPI | HashUpdate (IN HASH_HANDLE HashHandle, IN VOID *DataToHash, IN UINTN DataToHashLen) |
EFI_STATUS EFIAPI | HashCompleteAndExtend (IN HASH_HANDLE HashHandle, IN TPMI_DH_PCR PcrIndex, IN VOID *DataToHash, IN UINTN DataToHashLen, OUT TPML_DIGEST_VALUES *DigestList) |
EFI_STATUS EFIAPI | HashAndExtend (IN TPMI_DH_PCR PcrIndex, IN VOID *DataToHash, IN UINTN DataToHashLen, OUT TPML_DIGEST_VALUES *DigestList) |
EFI_STATUS EFIAPI | RegisterHashInterfaceLib (IN HASH_INTERFACE *HashInterface) |
Variables | |
TPM2_HASH_MASK | mTpm2HashMask [] |
Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
EFI_STATUS EFIAPI HashAndExtend | ( | IN TPMI_DH_PCR | PcrIndex, | |
IN VOID * | DataToHash, | |||
IN UINTN | DataToHashLen, | |||
OUT TPML_DIGEST_VALUES * | DigestList | |||
) |
Hash data and extend to PCR.
PcrIndex | PCR to be extended. | |
DataToHash | Data to be hashed. | |
DataToHashLen | Data size. | |
DigestList | Digest list. |
EFI_SUCCESS | Hash data and DigestList is returned. |
References EFI_STATUS(), Tpm2EventSequenceComplete(), Tpm2GetAlgoFromHashMask(), Tpm2HashSequenceStart(), Tpm2PcrEvent(), Tpm2PcrExtend(), Tpm2SequenceComplete(), Tpm2SequenceUpdate(), and UINTN().
Referenced by HashLogExtendEvent(), and TcgDxeHashLogExtendEvent().
EFI_STATUS EFIAPI HashCompleteAndExtend | ( | IN HASH_HANDLE | HashHandle, | |
IN TPMI_DH_PCR | PcrIndex, | |||
IN VOID * | DataToHash, | |||
IN UINTN | DataToHashLen, | |||
OUT TPML_DIGEST_VALUES * | DigestList | |||
) |
Hash sequence complete and extend to PCR.
HashHandle | Hash handle. | |
PcrIndex | PCR to be extended. | |
DataToHash | Data to be hashed. | |
DataToHashLen | Data size. | |
DigestList | Digest list. |
EFI_SUCCESS | Hash sequence complete and DigestList is returned. |
References EFI_STATUS(), Tpm2EventSequenceComplete(), Tpm2GetAlgoFromHashMask(), Tpm2PcrExtend(), Tpm2SequenceComplete(), Tpm2SequenceUpdate(), and UINTN().
Referenced by HashAndExtend(), and MeasurePeImageAndExtend().
EFI_STATUS EFIAPI HashStart | ( | OUT HASH_HANDLE * | HashHandle | ) |
Start hash sequence.
HashHandle | Hash handle. |
EFI_SUCCESS | Hash sequence start and HandleHandle returned. | |
EFI_OUT_OF_RESOURCES | No enough resource to start hash. |
References EFI_STATUS(), Tpm2GetAlgoFromHashMask(), and Tpm2HashSequenceStart().
Referenced by HashAndExtend(), and MeasurePeImageAndExtend().
EFI_STATUS EFIAPI HashUpdate | ( | IN HASH_HANDLE | HashHandle, | |
IN VOID * | DataToHash, | |||
IN UINTN | DataToHashLen | |||
) |
Update hash sequence data.
HashHandle | Hash handle. | |
DataToHash | Data to be hashed. | |
DataToHashLen | Data size. |
EFI_SUCCESS | Hash sequence updated. |
References EFI_STATUS(), Tpm2SequenceUpdate(), and UINTN().
Referenced by HashAndExtend(), and MeasurePeImageAndExtend().
EFI_STATUS EFIAPI RegisterHashInterfaceLib | ( | IN HASH_INTERFACE * | HashInterface | ) |
This service register Hash.
HashInterface | Hash interface |
EFI_SUCCESS | This hash interface is registered successfully. | |
EFI_UNSUPPORTED | System does not support register this interface. | |
EFI_ALREADY_STARTED | System already register this interface. |
Referenced by HashInstanceLibSha1Constructor(), and HashInstanceLibSha256Constructor().
TPM_ALG_ID Tpm2GetAlgoFromHashMask | ( | VOID | ) |
The function get algorith from hash mask info.
References mTpm2HashMask, and UINTN().
Referenced by HashAndExtend(), HashCompleteAndExtend(), and HashStart().
TPM2_HASH_MASK mTpm2HashMask[] |
Initial value:
{ {TPM_ALG_SHA1, HASH_ALG_SHA1}, {TPM_ALG_SHA256, HASH_ALG_SHA256}, {TPM_ALG_SHA384, HASH_ALG_SHA384}, {TPM_ALG_SHA512, HASH_ALG_SHA512}, }