2010-11-01 07:30:58 +01:00
|
|
|
## @file
|
|
|
|
# Package for cryptography modules.
|
|
|
|
#
|
2014-08-28 07:52:36 +02:00
|
|
|
# This Package provides cryptographic-related libraries for UEFI security modules.
|
|
|
|
# It also provides a test application to test libraries.
|
2010-11-01 07:30:58 +01:00
|
|
|
#
|
2020-02-03 19:18:49 +01:00
|
|
|
# Copyright (c) 2009 - 2020, Intel Corporation. All rights reserved.<BR>
|
2019-04-04 01:03:30 +02:00
|
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
2017-03-23 09:14:16 +01:00
|
|
|
#
|
2010-11-01 07:30:58 +01:00
|
|
|
##
|
|
|
|
|
|
|
|
[Defines]
|
|
|
|
DEC_SPECIFICATION = 0x00010005
|
|
|
|
PACKAGE_NAME = CryptoPkg
|
2014-08-28 07:52:36 +02:00
|
|
|
PACKAGE_UNI_FILE = CryptoPkg.uni
|
2010-11-01 07:30:58 +01:00
|
|
|
PACKAGE_GUID = 36470E80-36F2-4ba0-8CC8-937C7D9FF888
|
2018-01-22 07:59:21 +01:00
|
|
|
PACKAGE_VERSION = 0.98
|
2010-11-01 07:30:58 +01:00
|
|
|
|
|
|
|
[Includes]
|
|
|
|
Include
|
2017-04-06 07:53:06 +02:00
|
|
|
|
|
|
|
[Includes.Common.Private]
|
2019-11-07 11:29:16 +01:00
|
|
|
Private
|
2017-04-06 07:53:06 +02:00
|
|
|
Library/Include
|
2017-03-23 09:14:16 +01:00
|
|
|
Library/OpensslLib/openssl/include
|
2010-11-01 07:30:58 +01:00
|
|
|
|
|
|
|
[LibraryClasses]
|
|
|
|
## @libraryclass Provides basic library functions for cryptographic primitives.
|
|
|
|
##
|
|
|
|
BaseCryptLib|Include/Library/BaseCryptLib.h
|
|
|
|
|
2016-12-14 03:34:57 +01:00
|
|
|
## @libraryclass Provides TLS library functions for EFI TLS protocol.
|
|
|
|
##
|
|
|
|
TlsLib|Include/Library/TlsLib.h
|
|
|
|
|
2020-02-03 19:18:50 +01:00
|
|
|
## @libraryclass Provides Unified API for different hash implementations.
|
|
|
|
#
|
|
|
|
HashApiLib|Include/Library/HashApiLib.h
|
|
|
|
|
2019-11-07 11:29:16 +01:00
|
|
|
[Protocols]
|
|
|
|
## EDK II Crypto DXE protocol
|
|
|
|
# 2C2275C9-3A7B-426F-BE54-2D22BD9D1092
|
|
|
|
gEdkiiCryptoProtocolGuid = { 0x2C2275C9, 0x3A7B, 0x426F, { 0xBE, 0x54, 0x2D, 0x22, 0xBD, 0x9D, 0x10, 0x92 }}
|
|
|
|
|
|
|
|
## EDK II Crypto SMM protocol
|
|
|
|
# F46B2EB2-E0D7-4C96-A3B1-CB7C572EB300
|
|
|
|
gEdkiiSmmCryptoProtocolGuid = { 0xF46B2EB2, 0xE0D7, 0x4C96, { 0xA3, 0xB1, 0xc, 0x61, 0xbb, 0x24, 0x5c, 0x42 }}
|
|
|
|
|
|
|
|
[Ppis]
|
|
|
|
## EDK II Crypto PPI
|
|
|
|
# 7DCE671B-C223-446A-A705-ED637AAF6771
|
|
|
|
gEdkiiCryptoPpiGuid = { 0x7DCE671B, 0xC223, 0x446A, { 0xA7, 0x05, 0xED, 0x63, 0x7A, 0xAF, 0x67, 0x71 }}
|
|
|
|
|
2020-02-03 19:18:49 +01:00
|
|
|
[Guids]
|
|
|
|
## Crypto package token space guid.
|
|
|
|
gEfiCryptoPkgTokenSpaceGuid = { 0x6bd7de60, 0x9ef7, 0x4899, { 0x97, 0xd0, 0xab, 0xff, 0xfd, 0xe9, 0x70, 0xf2 } }
|
|
|
|
|
2019-11-07 11:29:16 +01:00
|
|
|
[PcdsFixedAtBuild]
|
|
|
|
## Enable/Disable the families and individual services produced by the
|
|
|
|
# EDK II Crypto Protocols/PPIs. The default is all services disabled.
|
|
|
|
# This Structured PCD is associated with PCD_CRYPTO_SERVICE_FAMILY_ENABLE
|
|
|
|
# structure that is defined in Include/Pcd/PcdCryptoServiceFamilyEnable.h.
|
|
|
|
# @Prompt Enable/Disable EDK II Crypto Protocol/PPI services
|
|
|
|
gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable|{0x00}|PCD_CRYPTO_SERVICE_FAMILY_ENABLE|0x00000002 {
|
|
|
|
<Packages>
|
|
|
|
CryptoPkg/CryptoPkg.dec
|
|
|
|
<HeaderFiles>
|
|
|
|
Pcd/PcdCryptoServiceFamilyEnable.h
|
|
|
|
}
|
|
|
|
|
2020-02-03 19:18:50 +01:00
|
|
|
## This PCD indicates the HASH algorithm to calculate hash of data
|
|
|
|
# Based on the value set, the required algorithm is chosen to calculate
|
|
|
|
# the hash of data.<BR>
|
|
|
|
# The default hashing algorithm for BaseHashApiLib is set to SHA256.<BR>
|
2020-02-16 04:51:02 +01:00
|
|
|
# 0x00000001 - HASH_ALG_SHA1.<BR>
|
|
|
|
# 0x00000002 - HASH_ALG_SHA256.<BR>
|
|
|
|
# 0x00000004 - HASH_ALG_SHA384.<BR>
|
|
|
|
# 0x00000008 - HASH_ALG_SHA512.<BR>
|
|
|
|
# 0x00000010 - HASH_ALG_SM3_256.<BR>
|
2020-02-03 19:18:50 +01:00
|
|
|
# @Prompt Set policy for hashing unsigned image for Secure Boot.
|
2020-02-16 04:51:02 +01:00
|
|
|
# @ValidList 0x80000001 | 0x00000001, 0x00000002, 0x00000004, 0x00000008, 0x00000010
|
|
|
|
gEfiCryptoPkgTokenSpaceGuid.PcdHashApiLibPolicy|0x00000002|UINT32|0x00000001
|
2020-02-03 19:18:50 +01:00
|
|
|
|
2022-04-13 09:02:02 +02:00
|
|
|
## Enable/Disable the ECC feature in openssl library. The default is disabled.
|
|
|
|
# If ECC feature is disabled, all related source files will not be compiled.
|
2022-09-25 11:26:20 +02:00
|
|
|
# @Prompt Enable/Disable ECC feature in openssl library
|
2022-05-10 09:19:03 +02:00
|
|
|
gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled|FALSE|BOOLEAN|0x0000003
|
2022-09-25 11:26:20 +02:00
|
|
|
# Set it to TRUE if:
|
|
|
|
# 1) Platform needs ECC in TLS, or asymmetric cryptography services such as
|
|
|
|
# X509 certificate or PEM format data processing.
|
|
|
|
# 2) Platform needs to enable PcdCryptoServiceFamilyEnable.Ec service.
|
|
|
|
# Please note:
|
|
|
|
# ECC feature will cause a significant memory increase, approximate memory impact
|
|
|
|
# in below table for reference by platform developers with FW size limitations.
|
|
|
|
# Uncompressed LZMA Compressed
|
|
|
|
# CPU CRYPTO_SERVICES Module EC=FALSE EC=TRUE EC=FALSE EC=TRUE Increase
|
|
|
|
# ==== =============== ======== ======== ======= ======== ======= ========
|
|
|
|
# IA32 NONE CryptoPei 21536 21568 0 KB
|
|
|
|
# IA32 NONE CryptoDxe 21632 21696 0 KB
|
|
|
|
# IA32 NONE CryptoSmm 22976 23072 0 KB
|
|
|
|
# IA32 MIN_PEI CryptoPei 248992 249120 0 KB
|
|
|
|
# IA32 MIN_DXE_MIN_SMM CryptoDxe 636672 829568 288520 401034 113 KB
|
|
|
|
# IA32 MIN_DXE_MIN_SMM CryptoSmm 426048 601472 191517 296022 105 KB
|
|
|
|
# IA32 ALL CryptoPei 423840 598976 189047 293759 104 KB
|
|
|
|
# IA32 ALL CryptoDxe 645280 838144 292955 405277 113 KB
|
|
|
|
# IA32 ALL CryptoSmm 441888 617184 198779 303628 105 KB
|
|
|
|
# X64 NONE CryptoPei 29632 29664 0 KB
|
|
|
|
# X64 NONE CryptoDxe 29792 29792 0 KB
|
|
|
|
# X64 NONE CryptoSmm 31296 31296 0 KB
|
|
|
|
# X64 MIN_PEI CryptoPei 310784 310848 0 KB
|
|
|
|
# X64 MIN_DXE_MIN_SMM CryptoDxe 804288 1016256 311436 426596 115 KB
|
|
|
|
# X64 MIN_DXE_MIN_SMM CryptoSmm 543776 733920 204483 310775 106 KB
|
|
|
|
# X64 ALL CryptoPei 540384 730240 202494 308467 106 KB
|
|
|
|
# X64 ALL CryptoDxe 815392 1027296 316228 431321 115 KB
|
|
|
|
# X64 ALL CryptoSmm 563648 753696 213488 319644 106 KB
|
2022-04-13 09:02:02 +02:00
|
|
|
|
2014-08-28 07:52:36 +02:00
|
|
|
[UserExtensions.TianoCore."ExtraFiles"]
|
|
|
|
CryptoPkgExtra.uni
|