CryptoPkg Updates to support RFC3161 timestamp signature verification.
The main changes includes: 1. Enabling SHA384 and SHA512 digest algorithm; (Sha512.c) 2. RFC 3161 timestamp signature verification support; (CryptTs.c) 3. Fixed one ASN.1 length encoding issue in Authenticode verification routine. (CryptAuthenticode.c) 4. Add the corresponding test cases in Cryptest utility (SHA384 & SHA512 & Timestamp verification) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qin Long <qin.long@intel.com> Reviewed-by: Guo Dong <guo.dong@intel.com> Reviewed-by: Ting Ye <ting.ye@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16339 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# Caution: This module requires additional review when modified.
|
||||
# This library will have external input - signature.
|
||||
# This external input must be validated carefully to avoid security issues such as
|
||||
# This external input must be validated carefully to avoid security issues such as
|
||||
# buffer overflow or integer overflow.
|
||||
#
|
||||
# Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
@@ -11,10 +11,10 @@
|
||||
# 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.
|
||||
#
|
||||
#
|
||||
##
|
||||
|
||||
[Defines]
|
||||
@@ -38,6 +38,7 @@
|
||||
Hash/CryptMd5.c
|
||||
Hash/CryptSha1.c
|
||||
Hash/CryptSha256.c
|
||||
Hash/CryptSha512.c
|
||||
Hmac/CryptHmacMd5.c
|
||||
Hmac/CryptHmacSha1.c
|
||||
Cipher/CryptAes.c
|
||||
@@ -50,6 +51,7 @@
|
||||
Pk/CryptDh.c
|
||||
Pk/CryptX509.c
|
||||
Pk/CryptAuthenticode.c
|
||||
Pk/CryptTs.c
|
||||
Pem/CryptPem.c
|
||||
|
||||
SysCall/CrtWrapper.c
|
||||
@@ -57,24 +59,6 @@
|
||||
SysCall/BaseMemAllocation.c
|
||||
|
||||
[Sources.Ia32]
|
||||
SysCall/Ia32/MathMultS64x64.c | MSFT
|
||||
SysCall/Ia32/MathDivU64x64.c | MSFT
|
||||
SysCall/Ia32/MathReminderU64x64.c | MSFT
|
||||
SysCall/Ia32/MathLShiftS64.c | MSFT
|
||||
SysCall/Ia32/MathRShiftU64.c | MSFT
|
||||
|
||||
SysCall/Ia32/MathMultS64x64.c | INTEL
|
||||
SysCall/Ia32/MathDivU64x64.c | INTEL
|
||||
SysCall/Ia32/MathReminderU64x64.c | INTEL
|
||||
SysCall/Ia32/MathLShiftS64.c | INTEL
|
||||
SysCall/Ia32/MathRShiftU64.c | INTEL
|
||||
|
||||
SysCall/Ia32/MathMultS64x64.S | GCC
|
||||
SysCall/Ia32/MathDivU64x64.S | GCC
|
||||
SysCall/Ia32/MathReminderU64x64.S | GCC
|
||||
SysCall/Ia32/MathLShiftS64.S | GCC
|
||||
SysCall/Ia32/MathRShiftU64.S | GCC
|
||||
|
||||
Rand/CryptRandTsc.c
|
||||
|
||||
[Sources.X64]
|
||||
@@ -107,4 +91,7 @@
|
||||
# Remove these [BuildOptions] after this library is cleaned up
|
||||
#
|
||||
[BuildOptions]
|
||||
# suppress the following warnings so we do not break the build with warnings-as-errors:
|
||||
# C4305: truncation from type1 to type2 (Introduced by RFC3161 Timestamp ASN.1 declarations)
|
||||
MSFT:*_*_X64_CC_FLAGS = /wd4305
|
||||
GCC:*_GCC44_IA32_CC_FLAGS = "-D__cdecl=__attribute__((cdecl))" "-D__declspec(t)=__attribute__((t))"
|
||||
|
Reference in New Issue
Block a user