From: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
To: Eric Jin <eric.jin@intel.com>, edk2-devel@lists.01.org
Subject: Re: [edk2-test][v3 Patch 1/3] uefi-sct/SctPkg:Format code style in PKCS7Verify
Date: Mon, 10 Dec 2018 13:54:17 -0600 [thread overview]
Message-ID: <5b7b20d177054c159ac13795b9ac3c9caaa4be6f.camel@arm.com> (raw)
In-Reply-To: <20181205055025.100680-1-eric.jin@intel.com>
On Wed, 2018-12-05 at 13:50 +0800, Eric Jin wrote:
> Convert EOL to Windows(CRLF)
> Remove trailing white spaces
> Make sure a new empty line in end of the file
> Replace '\t' with two spaces
> Change to the latest INF version
> Remove the #if 0 #endif block
> Remove the extra line breaks
>
> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Eric Jin <eric.jin@intel.com>
Reviewed-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
> ---
> .../EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.c | 88 +-
> .../EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.h | 168 ++-
> .../PKCS7Verify/BlackBoxTest/Pkcs7BBTest.inf | 126 +--
> .../BlackBoxTest/Pkcs7BBTestConformance.c | 1004 +++++++++-
> -------
> .../PKCS7Verify/BlackBoxTest/Pkcs7BBTestData.c | 1130
> ++++++++++----------
> .../PKCS7Verify/BlackBoxTest/Pkcs7BBTestFunction.c | 467 ++++----
> .../PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.c | 440 ++++----
> .../PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.h | 229 ++--
> 8 files changed, 1798 insertions(+), 1854 deletions(-)
>
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.c
> b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.c
> index c31d3d2..142f6d4 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.c
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.c
> @@ -1,44 +1,44 @@
> -/** @file
> -
> - Copyright 2016 Unified EFI, Inc.<BR>
> - Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> - Module Name:
> -
> - Guid.c
> -
> - Abstract:
> -
> - GUIDs auto-generated for EFI test assertion.
> -
> ---*/
> -
> -#include "Pkcs7BBTestMain.h"
> -
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid001 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_001_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid002 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_002_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid003 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_003_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid004 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_004_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid005 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_005_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid006 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_006_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid007 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_007_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid008 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_008_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid009 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_009_GUID;
> -EFI_GUID gPkcs7BBTestConformanceAssertionGuid010 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_010_GUID;
> -
> -
> -EFI_GUID gPkcs7BBTestFunctionAssertionGuid001 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_001_GUID;
> -EFI_GUID gPkcs7BBTestFunctionAssertionGuid002 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_002_GUID;
> -EFI_GUID gPkcs7BBTestFunctionAssertionGuid003 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_003_GUID;
> -EFI_GUID gPkcs7BBTestFunctionAssertionGuid004 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_004_GUID;
> \ No newline at end of file
> +/** @file
> +
> + Copyright 2016 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> + Module Name:
> +
> + Guid.c
> +
> + Abstract:
> +
> + GUIDs auto-generated for EFI test assertion.
> +
> +--*/
> +
> +#include "Pkcs7BBTestMain.h"
> +
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid001 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_001_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid002 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_002_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid003 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_003_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid004 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_004_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid005 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_005_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid006 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_006_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid007 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_007_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid008 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_008_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid009 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_009_GUID;
> +EFI_GUID gPkcs7BBTestConformanceAssertionGuid010 =
> EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_010_GUID;
> +
> +
> +EFI_GUID gPkcs7BBTestFunctionAssertionGuid001 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_001_GUID;
> +EFI_GUID gPkcs7BBTestFunctionAssertionGuid002 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_002_GUID;
> +EFI_GUID gPkcs7BBTestFunctionAssertionGuid003 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_003_GUID;
> +EFI_GUID gPkcs7BBTestFunctionAssertionGuid004 =
> EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_004_GUID;
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.h
> b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.h
> index 2165cce..ce980c9 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.h
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Guid.h
> @@ -1,85 +1,83 @@
> -/** @file
> -
> - Copyright 2016 Unified EFI, Inc.<BR>
> - Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> - Module Name:
> -
> - Guid.h
> -
> - Abstract:
> -
> - GUIDs auto-generated for EFI test assertion.
> -
> ---*/
> -
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_001_GUID \
> -{ 0x5ccc7dff, 0xc397, 0x4733, {0xb6, 0xc7, 0x88, 0xc4, 0x3e, 0x80,
> 0x6a, 0x67 }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid001;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_002_GUID \
> -{ 0xb1f546c3, 0x4e, 0x4e33, {0xb1, 0x81, 0x76, 0xf3, 0xf8, 0xb1,
> 0xd6, 0x5b }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid002;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_003_GUID \
> -{ 0xf9382c57, 0xd51d, 0x4ba9, {0x91, 0x41, 0x30, 0xc6, 0x28, 0x8b,
> 0xd3, 0x64 }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid003;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_004_GUID \
> -{ 0x3b322e30, 0x8378, 0x441a, {0xba, 0x1d, 0xee, 0xe5, 0x53, 0xda,
> 0x21, 0x49 }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid004;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_005_GUID \
> -{ 0xdfe02003, 0xb2ad, 0x46bc, {0xae, 0xe0, 0xf9, 0xb8, 0xd0, 0xec,
> 0xd3, 0x4a }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid005;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_006_GUID \
> -{ 0x8de626c4, 0x7112, 0x4a57, {0xb2, 0xbb, 0x30, 0xc, 0x5f, 0x2a,
> 0xc1, 0x8e }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid006;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_007_GUID \
> -{ 0x399e1246, 0xd15a, 0x491a, {0xbb, 0x82, 0x99, 0xa4, 0xda, 0xb3,
> 0xac, 0x28 }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid007;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_008_GUID \
> -{ 0x670b4eab, 0xf28d, 0x42db, {0xa7, 0xbc, 0xad, 0xd, 0x59, 0x80,
> 0x49, 0xaf }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid008;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_009_GUID \
> -{ 0xfd98e4e5, 0xf8af, 0x4dcf, {0x81, 0x1a, 0x6c, 0xf4, 0x99, 0x8a,
> 0x3, 0x9d }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid009;
> -
> -#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_010_GUID \
> -{ 0xb136e016, 0x4f80, 0x44bd, {0xba, 0xb0, 0x1c, 0x34, 0x8a, 0x2d,
> 0xa1, 0x8a }}
> -extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid010;
> -
> -
> -#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_001_GUID \
> -{ 0x5c0eec50, 0xa6ea, 0x413c, {0x8a, 0x46, 0x4a, 0xd1, 0x4a, 0x77,
> 0x76, 0xf1 }}
> -extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid001;
> -
> -#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_002_GUID \
> -{ 0x6ea61fbd, 0x1e46, 0x4854, {0x83, 0xf8, 0x22, 0x93, 0x24, 0x1a,
> 0x38, 0x67 }}
> -extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid002;
> -
> -#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_003_GUID \
> -{ 0x51af2845, 0x1bfe, 0x4bc3, {0x90, 0x69, 0x7b, 0x29, 0xbc, 0x7c,
> 0xc3, 0xc6 }}
> -extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid003;
> -
> -#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_004_GUID \
> -{ 0x912e23ef, 0x299c, 0x41ab, {0xa0, 0xf5, 0xfc, 0xbc, 0xf6, 0xfd,
> 0xd3, 0x32 }}
> -extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid004;
> -
> -
> +/** @file
> +
> + Copyright 2016 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> + Module Name:
> +
> + Guid.h
> +
> + Abstract:
> +
> + GUIDs auto-generated for EFI test assertion.
> +
> +--*/
> +
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_001_GUID \
> +{ 0x5ccc7dff, 0xc397, 0x4733, {0xb6, 0xc7, 0x88, 0xc4, 0x3e, 0x80,
> 0x6a, 0x67 }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid001;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_002_GUID \
> +{ 0xb1f546c3, 0x4e, 0x4e33, {0xb1, 0x81, 0x76, 0xf3, 0xf8, 0xb1,
> 0xd6, 0x5b }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid002;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_003_GUID \
> +{ 0xf9382c57, 0xd51d, 0x4ba9, {0x91, 0x41, 0x30, 0xc6, 0x28, 0x8b,
> 0xd3, 0x64 }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid003;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_004_GUID \
> +{ 0x3b322e30, 0x8378, 0x441a, {0xba, 0x1d, 0xee, 0xe5, 0x53, 0xda,
> 0x21, 0x49 }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid004;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_005_GUID \
> +{ 0xdfe02003, 0xb2ad, 0x46bc, {0xae, 0xe0, 0xf9, 0xb8, 0xd0, 0xec,
> 0xd3, 0x4a }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid005;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_006_GUID \
> +{ 0x8de626c4, 0x7112, 0x4a57, {0xb2, 0xbb, 0x30, 0xc, 0x5f, 0x2a,
> 0xc1, 0x8e }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid006;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_007_GUID \
> +{ 0x399e1246, 0xd15a, 0x491a, {0xbb, 0x82, 0x99, 0xa4, 0xda, 0xb3,
> 0xac, 0x28 }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid007;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_008_GUID \
> +{ 0x670b4eab, 0xf28d, 0x42db, {0xa7, 0xbc, 0xad, 0xd, 0x59, 0x80,
> 0x49, 0xaf }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid008;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_009_GUID \
> +{ 0xfd98e4e5, 0xf8af, 0x4dcf, {0x81, 0x1a, 0x6c, 0xf4, 0x99, 0x8a,
> 0x3, 0x9d }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid009;
> +
> +#define EFI_TEST_PKCS7BBTESTCONFORMANCE_ASSERTION_010_GUID \
> +{ 0xb136e016, 0x4f80, 0x44bd, {0xba, 0xb0, 0x1c, 0x34, 0x8a, 0x2d,
> 0xa1, 0x8a }}
> +extern EFI_GUID gPkcs7BBTestConformanceAssertionGuid010;
> +
> +
> +#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_001_GUID \
> +{ 0x5c0eec50, 0xa6ea, 0x413c, {0x8a, 0x46, 0x4a, 0xd1, 0x4a, 0x77,
> 0x76, 0xf1 }}
> +extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid001;
> +
> +#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_002_GUID \
> +{ 0x6ea61fbd, 0x1e46, 0x4854, {0x83, 0xf8, 0x22, 0x93, 0x24, 0x1a,
> 0x38, 0x67 }}
> +extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid002;
> +
> +#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_003_GUID \
> +{ 0x51af2845, 0x1bfe, 0x4bc3, {0x90, 0x69, 0x7b, 0x29, 0xbc, 0x7c,
> 0xc3, 0xc6 }}
> +extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid003;
> +
> +#define EFI_TEST_PKCS7BBTESTFUNCTION_ASSERTION_004_GUID \
> +{ 0x912e23ef, 0x299c, 0x41ab, {0xa0, 0xf5, 0xfc, 0xbc, 0xf6, 0xfd,
> 0xd3, 0x32 }}
> +extern EFI_GUID gPkcs7BBTestFunctionAssertionGuid004;
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTest.inf b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTest.inf
> index e54a185..1b89bed 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTest.inf
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTest.inf
> @@ -1,63 +1,63 @@
> -## @file
> -#
> -# Copyright 2016 Unified EFI, Inc.<BR>
> -# Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -#
> -# 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.
> -#
> -##
> -#/*++
> -#
> -# Module Name:
> -#
> -# Pkcs7BBTest.inf
> -#
> -# Abstract:
> -#
> -# Component description file for Pkcs7 Verify Protocol Black-Box
> Test.
> -#
> -#--*/
> -
> -[defines]
> - INF_VERSION = 0x00010005
> - BASE_NAME = Pkcs7BBTest
> - FILE_GUID = 00A8E76D-1CD9-465a-AE5B-B9998F887D65
> - MODULE_TYPE = UEFI_DRIVER
> - VERSION_STRING = 1.0
> - ENTRY_POINT = InitializePkcs7VerifyBBTest
> -
> -[sources.common]
> - Pkcs7BBTestConformance.c
> - Pkcs7BBTestFunction.c
> - Pkcs7BBTestMain.c
> - Pkcs7BBTestData.c
> - Guid.c
> -
> -[Packages]
> - MdePkg/MdePkg.dec
> - SctPkg/SctPkg.dec
> - SctPkg/UEFI/UEFI.dec
> -
> -[LibraryClasses]
> - UefiDriverEntryPoint
> - SctLib
> - EfiTestLib
> -
> -[Protocols]
> - gBlackBoxEfiPkcs7VerifyProtocolGuid
> -
> -[Guids]
> - gBlackBoxEfiCertSha256Guid
> - gBlackBoxEfiCertRsa2048Guid
> - gBlackBoxEfiCertRsa2048Sha256Guid
> - gBlackBoxEfiCertSha1Guid
> - gBlackBoxEfiCertRsa2048Sha1Guid
> - gBlackBoxEfiCertX509Guid
> - gBlackBoxEfiCertX509Sha256Guid
> -
> +## @file
> +#
> +# Copyright 2016 Unified EFI, Inc.<BR>
> +# Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +#
> +# 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.
> +#
> +##
> +#/*++
> +#
> +# Module Name:
> +#
> +# Pkcs7BBTest.inf
> +#
> +# Abstract:
> +#
> +# Component description file for Pkcs7 Verify Protocol Black-Box
> Test.
> +#
> +#--*/
> +
> +[defines]
> + INF_VERSION = 0x0001001B
> + BASE_NAME = Pkcs7BBTest
> + FILE_GUID = 00A8E76D-1CD9-465a-AE5B-B9998F887D65
> + MODULE_TYPE = UEFI_DRIVER
> + VERSION_STRING = 1.0
> + ENTRY_POINT = InitializePkcs7VerifyBBTest
> +
> +[sources.common]
> + Pkcs7BBTestConformance.c
> + Pkcs7BBTestFunction.c
> + Pkcs7BBTestMain.c
> + Pkcs7BBTestData.c
> + Guid.c
> +
> +[Packages]
> + MdePkg/MdePkg.dec
> + SctPkg/SctPkg.dec
> + SctPkg/UEFI/UEFI.dec
> +
> +[LibraryClasses]
> + UefiDriverEntryPoint
> + SctLib
> + EfiTestLib
> +
> +[Protocols]
> + gBlackBoxEfiPkcs7VerifyProtocolGuid
> +
> +[Guids]
> + gBlackBoxEfiCertSha256Guid
> + gBlackBoxEfiCertRsa2048Guid
> + gBlackBoxEfiCertRsa2048Sha256Guid
> + gBlackBoxEfiCertSha1Guid
> + gBlackBoxEfiCertRsa2048Sha1Guid
> + gBlackBoxEfiCertX509Guid
> + gBlackBoxEfiCertX509Sha256Guid
> +
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestConformance.c b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestConformance.c
> index a5a90f0..1dc9921 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestConformance.c
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestConformance.c
> @@ -1,510 +1,504 @@
> -/** @file
> -
> - Copyright 2016 Unified EFI, Inc.<BR>
> - Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> -Module Name:
> -
> - Pkcs7BBTestConformance.c
> -
> -Abstract:
> -
> - for EFI Driver Pkcs7 Verify Protocol's Conformance Test
> -
> ---*/
> -
> -#include "Pkcs7BBTestMain.h"
> -
> -extern EFI_SIGNATURE_LIST *DbEntry1;
> -extern EFI_SIGNATURE_LIST *DbEntry2;
> -extern EFI_SIGNATURE_LIST *DbEntry3;
> -extern EFI_SIGNATURE_LIST *DbEntry4;
> -extern EFI_SIGNATURE_LIST *DbEntry5;
> -
> -extern EFI_SIGNATURE_LIST *AllowedDb[3];
> -extern EFI_SIGNATURE_LIST *RevokedDb[3];
> -extern EFI_SIGNATURE_LIST *TimestampDb[3];
> -
> -EFI_STATUS
> -BBTestVerifyBufferConformanceTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - )
> -{
> - EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib;
> - EFI_STATUS Status, Status1, Status2,
> Status3, Status4, Status5, Status6, Status7, Status8;
> - EFI_PKCS7_VERIFY_PROTOCOL *Pkcs7Verify;
> - EFI_TEST_ASSERTION AssertionType;
> - UINT8 Content[10];
> -
> - Pkcs7Verify = (EFI_PKCS7_VERIFY_PROTOCOL*)ClientInterface;
> - if (Pkcs7Verify == NULL)
> - return EFI_UNSUPPORTED;
> -
> - //
> - // Get the Standard Library Interface
> - //
> +/** @file
> +
> + Copyright 2016 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> +Module Name:
> +
> + Pkcs7BBTestConformance.c
> +
> +Abstract:
> +
> + for EFI Driver Pkcs7 Verify Protocol's Conformance Test
> +
> +--*/
> +
> +#include "Pkcs7BBTestMain.h"
> +
> +extern EFI_SIGNATURE_LIST *DbEntry1;
> +extern EFI_SIGNATURE_LIST *DbEntry2;
> +extern EFI_SIGNATURE_LIST *DbEntry3;
> +extern EFI_SIGNATURE_LIST *DbEntry4;
> +extern EFI_SIGNATURE_LIST *DbEntry5;
> +
> +extern EFI_SIGNATURE_LIST *AllowedDb[3];
> +extern EFI_SIGNATURE_LIST *RevokedDb[3];
> +extern EFI_SIGNATURE_LIST *TimestampDb[3];
> +
> +EFI_STATUS
> +BBTestVerifyBufferConformanceTest (
> + IN EFI_BB_TEST_PROTOCOL *This,
> + IN VOID *ClientInterface,
> + IN EFI_TEST_LEVEL TestLevel,
> + IN EFI_HANDLE SupportHandle
> + )
> +{
> + EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib;
> + EFI_STATUS Status, Status1, Status2,
> Status3, Status4, Status5, Status6, Status7, Status8;
> + EFI_PKCS7_VERIFY_PROTOCOL *Pkcs7Verify;
> + EFI_TEST_ASSERTION AssertionType;
> + UINT8 Content[10];
> +
> + Pkcs7Verify = (EFI_PKCS7_VERIFY_PROTOCOL*)ClientInterface;
> + if (Pkcs7Verify == NULL)
> + return EFI_UNSUPPORTED;
> +
> + //
> + // Get the Standard Library Interface
> + //
> Status = gtBS->HandleProtocol (
> SupportHandle,
> &gEfiStandardTestLibraryGuid,
> (VOID **) &StandardLib
> );
> - if (EFI_ERROR(Status)) {
> - return Status;
> - }
> -
> - AllowedDb[0] = DbEntry1;
> -
> - // SignedData is NULL
> - Status1 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, NULL,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - Status2 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, NULL,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> -
> - // SignedDataSize is 0
> - Status3 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded, 0,
> NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL, 0);
> - Status4 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached, 0,
> TestBin, sizeof(TestBin), AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> -
> - // Content is not NULL and ContentSize is NULL.
> - Status5 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, NULL);
> - Status6 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, NULL);
> -
> - // AllowedDb is NULL
> - AllowedDb[0] = NULL;
> - Status7 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, NULL, RevokedDb, TimestampDb, NULL, 0);
> - Status8 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), NULL, RevokedDb,
> TimestampDb, NULL, 0);
> -
> -
> - if ((Status1 == EFI_INVALID_PARAMETER) && (Status2 ==
> EFI_INVALID_PARAMETER) && (Status3 == EFI_INVALID_PARAMETER) &&
> (Status4 == EFI_INVALID_PARAMETER) &&
> - (Status5 == EFI_INVALID_PARAMETER) && (Status6 ==
> EFI_INVALID_PARAMETER) && (Status7 == EFI_INVALID_PARAMETER) &&
> (Status8 == EFI_INVALID_PARAMETER))
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid001 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_INVALID_PARAMETER.",
> - L"%a:%d: Status1 - %r, Status2 - %r, Status3 - %r,
> Status4 - %r, Status5 - %r, Status6 - %r, Status7 - %r, Status8 -
> %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status1,
> - Status2,
> - Status3,
> - Status4,
> - Status5,
> - Status6,
> - Status7,
> - Status8
> - );
> -
> - //
> - // Conformance test with EmbeddedData
> - //
> -
> - // SignedData buffer is not correctly formatted for processing by
> the function.
> - P7Embedded[0] = 0x40;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - P7Embedded[0] = 0x30;
> -
> - if (Status == EFI_UNSUPPORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid002 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when SignedData buffer
> is not correctly formatted for processing.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Unsupported or invalid format in AllowedDb
> - DbEntry1->SignatureListSize = 16;
> - AllowedDb[0] = DbEntry1;
> -
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - AllowedDb[0] = NULL;
> - DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);;
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid003 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Unsupported or invalid format in RevokedDb
> - DbEntry1->SignatureListSize = 16;
> - RevokedDb[0] = DbEntry1;
> -
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - RevokedDb[0] = NULL;
> - DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid004 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - // Unsupported or invalid format in TimeStampDb
> - DbEntry3->SignatureListSize = 16;
> - RevokedDb[0] = DbEntry1;
> - AllowedDb[0] = DbEntry1;
> - TimestampDb[0] = DbEntry3;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - RevokedDb[0] = NULL;
> - AllowedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid005 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> TimeStampDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> -
> - // Buffer is correctly formatted but signer is not in AllowedDb.
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid006 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is not in AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Buffer is correctly formatted but signer is in RevokedDb.
> - AllowedDb[0] = DbEntry2;
> - RevokedDb[0] = DbEntry2;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid007 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is in RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Buffer is correctly formatted but the content hash is in
> RevokedDb.
> - AllowedDb[0] = DbEntry2;
> - RevokedDb[0] = DbEntry4;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid008 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but the content hash is in RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> -
> -
> -
> - // Signed data embedded in SignedData but InData is not NULL
> - AllowedDb[0] = DbEntry1;
> - RevokedDb[0] = NULL;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - if (Status == EFI_UNSUPPORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid009 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when Signed data
> embedded in SignedData but InData is not NULL.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - //
> - // Conformance test with DetachedData
> - //
> -
> - // SignedData buffer is not correctly formatted for processing by
> the function.
> - P7Detached[0] = 0x40;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - P7Detached[0] = 0x30;
> -
> - if (Status == EFI_UNSUPPORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid002 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when SignedData buffer
> is not correctly formatted for processing.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Content not found because InData is NULL and no content
> embedded in SignedData.
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> - if (Status == EFI_NOT_FOUND)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid010 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_NOT_FOUND when InData is NULL and
> no content embedded in SignedData.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Unsupported or invalid format in AllowedDb
> - DbEntry1->SignatureListSize = 16;
> - AllowedDb[0] = DbEntry1;
> -
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - AllowedDb[0] = NULL;
> - DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);;
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid003 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - // Unsupported or invalid format in RevokedDb
> - DbEntry1->SignatureListSize = 16;
> - RevokedDb[0] = DbEntry1;
> -
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - RevokedDb[0] = NULL;
> - DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid004 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - // Unsupported or invalid format in TimeStampDb
> - DbEntry3->SignatureListSize = 16;
> - RevokedDb[0] = DbEntry1;
> - AllowedDb[0] = DbEntry1;
> - TimestampDb[0] = DbEntry3;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - RevokedDb[0] = NULL;
> - AllowedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> -
> - if (Status == EFI_ABORTED)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid005 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> TimeStampDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - // Buffer is correctly formatted but signer is not in AllowedDb.
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid006 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is not in AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Buffer is correctly formatted but signer is in RevokedDb.
> - AllowedDb[0] = DbEntry2;
> - RevokedDb[0] = DbEntry2;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid007 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is in RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Buffer is correctly formatted but the content hash is in
> RevokedDb.
> - AllowedDb[0] = DbEntry2;
> - RevokedDb[0] = DbEntry4;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> - if (Status == EFI_SECURITY_VIOLATION)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestConformanceAssertionGuid008 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but the content hash is in RevokedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - return EFI_SUCCESS;
> -}
> -
> -
> + if (EFI_ERROR(Status)) {
> + return Status;
> + }
> +
> + AllowedDb[0] = DbEntry1;
> +
> + // SignedData is NULL
> + Status1 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, NULL,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + Status2 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, NULL,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> +
> + // SignedDataSize is 0
> + Status3 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded, 0,
> NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL, 0);
> + Status4 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached, 0,
> TestBin, sizeof(TestBin), AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> +
> + // Content is not NULL and ContentSize is NULL.
> + Status5 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, NULL);
> + Status6 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, NULL);
> +
> + // AllowedDb is NULL
> + AllowedDb[0] = NULL;
> + Status7 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, NULL, RevokedDb, TimestampDb, NULL, 0);
> + Status8 = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), NULL, RevokedDb,
> TimestampDb, NULL, 0);
> +
> +
> + if ((Status1 == EFI_INVALID_PARAMETER) && (Status2 ==
> EFI_INVALID_PARAMETER) && (Status3 == EFI_INVALID_PARAMETER) &&
> (Status4 == EFI_INVALID_PARAMETER) &&
> + (Status5 == EFI_INVALID_PARAMETER) && (Status6 ==
> EFI_INVALID_PARAMETER) && (Status7 == EFI_INVALID_PARAMETER) &&
> (Status8 == EFI_INVALID_PARAMETER))
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid001 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_INVALID_PARAMETER.",
> + L"%a:%d: Status1 - %r, Status2 - %r, Status3 - %r,
> Status4 - %r, Status5 - %r, Status6 - %r, Status7 - %r, Status8 -
> %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status1,
> + Status2,
> + Status3,
> + Status4,
> + Status5,
> + Status6,
> + Status7,
> + Status8
> + );
> +
> + //
> + // Conformance test with EmbeddedData
> + //
> +
> + // SignedData buffer is not correctly formatted for processing by
> the function.
> + P7Embedded[0] = 0x40;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + P7Embedded[0] = 0x30;
> +
> + if (Status == EFI_UNSUPPORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid002 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when SignedData buffer
> is not correctly formatted for processing.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Unsupported or invalid format in AllowedDb
> + DbEntry1->SignatureListSize = 16;
> + AllowedDb[0] = DbEntry1;
> +
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + AllowedDb[0] = NULL;
> + DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);;
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid003 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Unsupported or invalid format in RevokedDb
> + DbEntry1->SignatureListSize = 16;
> + RevokedDb[0] = DbEntry1;
> +
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + RevokedDb[0] = NULL;
> + DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid004 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> +
> + // Unsupported or invalid format in TimeStampDb
> + DbEntry3->SignatureListSize = 16;
> + RevokedDb[0] = DbEntry1;
> + AllowedDb[0] = DbEntry1;
> + TimestampDb[0] = DbEntry3;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + RevokedDb[0] = NULL;
> + AllowedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid005 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> TimeStampDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> +
> + // Buffer is correctly formatted but signer is not in AllowedDb.
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid006 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is not in AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Buffer is correctly formatted but signer is in RevokedDb.
> + AllowedDb[0] = DbEntry2;
> + RevokedDb[0] = DbEntry2;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid007 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is in RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Buffer is correctly formatted but the content hash is in
> RevokedDb.
> + AllowedDb[0] = DbEntry2;
> + RevokedDb[0] = DbEntry4;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid008 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but the content hash is in RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Signed data embedded in SignedData but InData is not NULL
> + AllowedDb[0] = DbEntry1;
> + RevokedDb[0] = NULL;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + if (Status == EFI_UNSUPPORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid009 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when Signed data
> embedded in SignedData but InData is not NULL.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + //
> + // Conformance test with DetachedData
> + //
> +
> + // SignedData buffer is not correctly formatted for processing by
> the function.
> + P7Detached[0] = 0x40;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + P7Detached[0] = 0x30;
> +
> + if (Status == EFI_UNSUPPORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid002 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_UNSUPPORTED when SignedData buffer
> is not correctly formatted for processing.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Content not found because InData is NULL and no content
> embedded in SignedData.
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> + if (Status == EFI_NOT_FOUND)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid010 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_NOT_FOUND when InData is NULL and
> no content embedded in SignedData.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Unsupported or invalid format in AllowedDb
> + DbEntry1->SignatureListSize = 16;
> + AllowedDb[0] = DbEntry1;
> +
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + AllowedDb[0] = NULL;
> + DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);;
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid003 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> +
> + // Unsupported or invalid format in RevokedDb
> + DbEntry1->SignatureListSize = 16;
> + RevokedDb[0] = DbEntry1;
> +
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + RevokedDb[0] = NULL;
> + DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid004 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> +
> + // Unsupported or invalid format in TimeStampDb
> + DbEntry3->SignatureListSize = 16;
> + RevokedDb[0] = DbEntry1;
> + AllowedDb[0] = DbEntry1;
> + TimestampDb[0] = DbEntry3;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + RevokedDb[0] = NULL;
> + AllowedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> +
> + if (Status == EFI_ABORTED)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid005 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_ABORTED when invalid format in
> TimeStampDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> +
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + // Buffer is correctly formatted but signer is not in AllowedDb.
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid006 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is not in AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Buffer is correctly formatted but signer is in RevokedDb.
> + AllowedDb[0] = DbEntry2;
> + RevokedDb[0] = DbEntry2;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid007 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but signer is in RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Buffer is correctly formatted but the content hash is in
> RevokedDb.
> + AllowedDb[0] = DbEntry2;
> + RevokedDb[0] = DbEntry4;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> + if (Status == EFI_SECURITY_VIOLATION)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestConformanceAssertionGuid008 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SECURITY_VIOLATION when Buffer is
> correctly formatted but the content hash is in RevokedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + return EFI_SUCCESS;
> +}
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestData.c b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestData.c
> index a164b54..0511e00 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestData.c
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestData.c
> @@ -1,565 +1,565 @@
> -/** @file
> -
> - Copyright 2016 Unified EFI, Inc.<BR>
> - Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> -Module Name:
> -
> - Pkcs7BBTestData.c
> -
> -Abstract:
> -
> - Pre Data for EFI Driver Pkcs7 Verify Protocol's Test
> -
> ---*/
> -
> -//
> -// Sample Test Data for P7 Signing & Verification.
> -// "Hello World!
> -// Test for PKCS7 Blob Data Signing & Verification."
> -//
> -UINT8 TestBin[64] = {
> - 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64,
> 0x21, 0x0d, 0x0a, 0x54, 0x65,
> - 0x73, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x50, 0x4b, 0x43, 0x53,
> 0x37, 0x20, 0x42, 0x6c, 0x6f,
> - 0x62, 0x20, 0x44, 0x61, 0x74, 0x61, 0x20, 0x53, 0x69, 0x67, 0x6e,
> 0x69, 0x6e, 0x67, 0x20, 0x26,
> - 0x20, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
> 0x6f, 0x6e, 0x2e, 0x0d, 0x0a
> -};
> -
> -//
> -// The SHA256 Digest Value of Sample Test Data
> -//
> -UINT8 TestBinHash[32] = {
> - 0x45, 0xce, 0x79, 0x80, 0xef, 0x43, 0x8f, 0x63, 0xd0, 0x75, 0x23,
> 0x48, 0x38, 0x2f, 0xd8, 0x48,
> - 0x21, 0x5d, 0xcc, 0x37, 0x68, 0x97, 0x0f, 0xb4, 0x7c, 0xc1, 0xff,
> 0x91, 0xb2, 0x04, 0xf7, 0x0e
> -};
> -
> -UINT8 TestSubCert[755] = {
> - 0x30, 0x82, 0x02, 0xEF, 0x30, 0x82, 0x01, 0xDB, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0xF9,
> - 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2, 0x7D,
> 0xC8, 0x72, 0xD6, 0x28, 0x30,
> - 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> - 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> - 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x32, 0x35, 0x32, 0x5A,
> - 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> - 0x12, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x07, 0x54, 0x65, 0x73, 0x74,
> - 0x53, 0x75, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09,
> 0x2A, 0x86, 0x48, 0x86, 0xF7,
> - 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00,
> 0x30, 0x82, 0x01, 0x0A, 0x02,
> - 0x82, 0x01, 0x01, 0x00, 0xB1, 0x6D, 0x01, 0x2E, 0xC2, 0xEA, 0x72,
> 0x83, 0xDA, 0x47, 0xCF, 0xC2,
> - 0xB9, 0x03, 0xC5, 0x2D, 0x1E, 0x06, 0xA1, 0x36, 0xD2, 0x81, 0x7B,
> 0x51, 0xAA, 0x10, 0xDD, 0x74,
> - 0xCB, 0x57, 0x41, 0x1F, 0xFE, 0x5A, 0x9C, 0xA1, 0x81, 0x0A, 0xDF,
> 0x0A, 0x54, 0x38, 0xA2, 0xA5,
> - 0x35, 0xAF, 0xB3, 0xD0, 0x43, 0xC1, 0x11, 0xBB, 0xFD, 0x82, 0x4A,
> 0x64, 0xBF, 0x35, 0xE4, 0xC5,
> - 0x95, 0x1A, 0x2B, 0x6D, 0x3D, 0xA7, 0x06, 0x26, 0xBF, 0xBA, 0x3A,
> 0x92, 0x39, 0xC2, 0xB5, 0x24,
> - 0xA2, 0xE7, 0x91, 0x91, 0xD6, 0x83, 0x15, 0x4A, 0x45, 0x6A, 0x90,
> 0x43, 0xD5, 0x4E, 0x18, 0xD2,
> - 0xCE, 0xA7, 0xCA, 0x0B, 0x0A, 0x1E, 0x80, 0xE2, 0x97, 0xB3, 0x62,
> 0xC3, 0xAC, 0x36, 0x5A, 0x10,
> - 0x78, 0xB9, 0x87, 0xBA, 0xFB, 0x36, 0xE3, 0xC2, 0x39, 0x66, 0x68,
> 0x1C, 0x31, 0xD4, 0x32, 0xE3,
> - 0x4F, 0x62, 0x3A, 0x32, 0x4B, 0xC6, 0xF4, 0x56, 0xCD, 0xC1, 0xDF,
> 0x76, 0x52, 0x43, 0x4F, 0xB4,
> - 0x2E, 0x29, 0x06, 0x0A, 0x28, 0xB9, 0x03, 0xDD, 0x65, 0x81, 0x1A,
> 0x7A, 0x47, 0x2F, 0x86, 0xAB,
> - 0x37, 0xD9, 0xE3, 0x83, 0x6C, 0xE0, 0x7D, 0x74, 0x26, 0x16, 0x8F,
> 0xCC, 0x2C, 0x12, 0xBB, 0x06,
> - 0xD5, 0x7E, 0x3B, 0x5A, 0xE7, 0x22, 0x1B, 0x41, 0xB3, 0x9F, 0xA4,
> 0x8C, 0x09, 0xC6, 0x8B, 0x4C,
> - 0x60, 0xF1, 0x9D, 0xDE, 0x94, 0x05, 0x19, 0xC4, 0xE3, 0x10, 0x31,
> 0x02, 0xE0, 0xEF, 0x4B, 0x7B,
> - 0x76, 0xBF, 0xB2, 0xC3, 0xC8, 0x13, 0x67, 0xEF, 0x15, 0xF5, 0xAB,
> 0x17, 0xF9, 0x8B, 0x99, 0x09,
> - 0xEC, 0x17, 0xC7, 0x94, 0xDB, 0x3E, 0xAE, 0x88, 0x49, 0x4B, 0xBC,
> 0x28, 0x02, 0x57, 0xF6, 0xED,
> - 0xF7, 0xDE, 0x1F, 0xEA, 0x67, 0x86, 0xCA, 0x40, 0x61, 0x0F, 0x2C,
> 0xBA, 0xCD, 0xC0, 0x55, 0x5E,
> - 0xDC, 0xF8, 0xCD, 0x53, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x48,
> 0x30, 0x46, 0x30, 0x44, 0x06,
> - 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10, 0x84,
> 0xB5, 0x25, 0xA3, 0xD7, 0x99,
> - 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A, 0xA1,
> 0x15, 0x30, 0x13, 0x31, 0x11,
> - 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65,
> 0x73, 0x74, 0x52, 0x6F, 0x6F,
> - 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B,
> 0x49, 0xA7, 0xD3, 0x63, 0x4F,
> - 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02,
> 0x1D, 0x05, 0x00, 0x03, 0x82,
> - 0x01, 0x01, 0x00, 0x10, 0x5F, 0xC3, 0xCD, 0x68, 0x05, 0x16, 0x26,
> 0x94, 0xBE, 0xEC, 0x30, 0x4A,
> - 0x78, 0x58, 0x7A, 0xC8, 0xAC, 0x9E, 0xDF, 0xF3, 0x8A, 0x31, 0x33,
> 0x92, 0x24, 0x18, 0xF5, 0x88,
> - 0x1E, 0xBC, 0xFA, 0xA0, 0xC2, 0x14, 0x74, 0xE1, 0x7B, 0x98, 0x84,
> 0x8B, 0xF5, 0x27, 0x2C, 0x70,
> - 0x99, 0x8E, 0x98, 0x11, 0x01, 0xF7, 0xC9, 0x52, 0xD2, 0x1B, 0x36,
> 0xC9, 0x9F, 0xC5, 0x80, 0x7C,
> - 0xCF, 0xD8, 0xC1, 0xC9, 0x40, 0xF9, 0x91, 0x27, 0xD0, 0x90, 0x3D,
> 0x1A, 0xDB, 0x60, 0x58, 0x66,
> - 0x4D, 0xD7, 0xA4, 0x98, 0x37, 0x21, 0x93, 0xB7, 0x87, 0xD3, 0x71,
> 0x6B, 0x36, 0xA2, 0x40, 0xFC,
> - 0x19, 0x51, 0x80, 0x1D, 0xD6, 0xEF, 0x9E, 0x5B, 0xD9, 0x7B, 0x02,
> 0x04, 0xE4, 0x53, 0x40, 0x5F,
> - 0x3E, 0xE2, 0x4D, 0xEB, 0x19, 0x9E, 0xAF, 0xC5, 0x5B, 0x8E, 0x4F,
> 0x6B, 0x7B, 0xC8, 0xB4, 0xC9,
> - 0x35, 0xA3, 0x8B, 0xB4, 0x7B, 0x97, 0x08, 0x49, 0x3E, 0x9B, 0x20,
> 0x49, 0x81, 0x1C, 0x85, 0xE5,
> - 0xEF, 0x58, 0x46, 0x4F, 0x63, 0xF7, 0x49, 0x3A, 0x1B, 0x83, 0xCD,
> 0x7C, 0x9B, 0xC2, 0xF8, 0xC2,
> - 0x5D, 0x62, 0xD2, 0x4D, 0x18, 0xAD, 0x87, 0x77, 0x54, 0x6F, 0x8C,
> 0x6A, 0x31, 0x64, 0x2E, 0xFD,
> - 0x29, 0x8F, 0xDF, 0xC8, 0xC7, 0x35, 0x91, 0xE4, 0x76, 0xA1, 0x0E,
> 0x03, 0x8F, 0xC1, 0xBF, 0x35,
> - 0x4B, 0x2A, 0xF1, 0x7F, 0x8B, 0x0F, 0xC3, 0x9D, 0x5D, 0x41, 0x40,
> 0x8A, 0x05, 0xEB, 0x53, 0xE6,
> - 0xF4, 0x03, 0x33, 0x07, 0xAB, 0x21, 0x51, 0x50, 0x37, 0xB5, 0x65,
> 0x43, 0x4D, 0x25, 0x8B, 0xB0,
> - 0x77, 0x47, 0xA3, 0xC7, 0x1C, 0xC7, 0xE7, 0xB4, 0x8B, 0x4D, 0x9E,
> 0x5B, 0x77, 0xE3, 0x36, 0x69,
> - 0xB4, 0x8F, 0x0D, 0x6C, 0xD0, 0xC5, 0x9D, 0x8D, 0xD2, 0x49, 0xED,
> 0x5B, 0x21, 0x61, 0xF6, 0x2C,
> - 0x74, 0x84, 0xA1
> -};
> -
> -UINT8 TestRootCert[756] = {
> - 0x30, 0x82, 0x02, 0xF0, 0x30, 0x82, 0x01, 0xDC, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0x6F,
> - 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B, 0x49, 0xA7, 0xD3, 0x63,
> 0x4F, 0xCC, 0x11, 0xF4, 0x30,
> - 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> - 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> - 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x30, 0x31, 0x33, 0x5A,
> - 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> - 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x08, 0x54, 0x65, 0x73, 0x74,
> - 0x52, 0x6F, 0x6F, 0x74, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> - 0xF7, 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F,
> 0x00, 0x30, 0x82, 0x01, 0x0A,
> - 0x02, 0x82, 0x01, 0x01, 0x00, 0xD0, 0xCC, 0xC7, 0x8F, 0x69, 0xAB,
> 0x7C, 0xEE, 0xF4, 0xEC, 0xEE,
> - 0x82, 0x8A, 0xD3, 0xE0, 0x14, 0x19, 0x1F, 0xB8, 0xCC, 0xA8, 0x65,
> 0xF3, 0xF8, 0x93, 0xF6, 0xBA,
> - 0x23, 0x11, 0xA5, 0xDC, 0xD4, 0xBC, 0xB6, 0xAD, 0x6E, 0x06, 0xCC,
> 0x19, 0x1A, 0xCE, 0x16, 0xFA,
> - 0x0A, 0x36, 0x39, 0x2F, 0x90, 0x89, 0x90, 0xBB, 0x0A, 0xC3, 0xAF,
> 0x6E, 0x69, 0x6C, 0x0B, 0xB8,
> - 0xD2, 0xD6, 0xB9, 0xC0, 0x23, 0xD7, 0x3C, 0x15, 0xFC, 0x24, 0x06,
> 0x9D, 0xED, 0x60, 0xEF, 0x29,
> - 0xA3, 0x3B, 0xBA, 0x02, 0xC3, 0x5F, 0xA4, 0x36, 0xC6, 0xBF, 0x8B,
> 0x8F, 0x32, 0x95, 0xE0, 0x5C,
> - 0x80, 0xF5, 0x0E, 0x78, 0x45, 0xF5, 0xE1, 0x51, 0x19, 0x97, 0x1B,
> 0xDE, 0xD4, 0xBB, 0xF2, 0x9B,
> - 0xFF, 0x01, 0xE3, 0x4B, 0x9C, 0xEF, 0x7E, 0x3F, 0x1C, 0x97, 0x82,
> 0x21, 0x9A, 0xCA, 0x90, 0x36,
> - 0x7F, 0x83, 0xEA, 0x03, 0x1B, 0x79, 0x0B, 0x2F, 0xD7, 0xB3, 0x35,
> 0x79, 0x36, 0xD3, 0xE5, 0x40,
> - 0x9C, 0x52, 0xB0, 0x36, 0x52, 0x0E, 0x8A, 0x9D, 0xA9, 0x02, 0xE0,
> 0x8C, 0xF1, 0x02, 0x12, 0x70,
> - 0x29, 0x2C, 0xAE, 0x3E, 0x9C, 0x7F, 0x3A, 0xB7, 0x2D, 0x4B, 0xB9,
> 0x51, 0x68, 0x35, 0xCA, 0xBC,
> - 0xCC, 0x50, 0x46, 0xCE, 0xB9, 0x2C, 0x4F, 0xBE, 0x27, 0x0E, 0xD5,
> 0x8F, 0x31, 0x40, 0x61, 0xCC,
> - 0xE5, 0x7F, 0x89, 0x8B, 0xC7, 0x15, 0x13, 0xDA, 0x1A, 0x5A, 0xD0,
> 0xFE, 0xCE, 0x47, 0x10, 0xCC,
> - 0xBC, 0xE4, 0xDB, 0x34, 0x23, 0x0F, 0xFE, 0xE4, 0x23, 0xE7, 0x30,
> 0x70, 0xE2, 0xE4, 0xFC, 0x8F,
> - 0xBA, 0xD9, 0x49, 0xD0, 0xA0, 0xAB, 0x4D, 0x69, 0xA2, 0xE4, 0xBB,
> 0x2A, 0x53, 0x74, 0x08, 0xE5,
> - 0x98, 0x32, 0x24, 0x92, 0xE3, 0x27, 0x28, 0x93, 0xC0, 0xB0, 0xE6,
> 0x0F, 0xFA, 0x05, 0xEA, 0xCA,
> - 0x1D, 0x4F, 0x45, 0x67, 0xC9, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3,
> 0x48, 0x30, 0x46, 0x30, 0x44,
> - 0x06, 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10,
> 0x84, 0xB5, 0x25, 0xA3, 0xD7,
> - 0x99, 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A,
> 0xA1, 0x15, 0x30, 0x13, 0x31,
> - 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54,
> 0x65, 0x73, 0x74, 0x52, 0x6F,
> - 0x6F, 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85,
> 0x9B, 0x49, 0xA7, 0xD3, 0x63,
> - 0x4F, 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03,
> 0x02, 0x1D, 0x05, 0x00, 0x03,
> - 0x82, 0x01, 0x01, 0x00, 0x07, 0x71, 0x55, 0x58, 0x31, 0xF5, 0x2D,
> 0xDA, 0x85, 0xDA, 0xF2, 0x62,
> - 0x2D, 0xC2, 0xD3, 0xD9, 0x86, 0x43, 0x50, 0xE8, 0xC5, 0x51, 0x6C,
> 0xA2, 0x6D, 0x5A, 0xFB, 0x10,
> - 0x57, 0xFA, 0x63, 0x8E, 0x58, 0xA2, 0x07, 0xFC, 0xB7, 0xA1, 0x5C,
> 0x6E, 0xF7, 0x6B, 0xD0, 0x11,
> - 0x4A, 0xCB, 0xF4, 0xC1, 0xA4, 0xDE, 0x43, 0x2D, 0x1A, 0xEF, 0xD8,
> 0x71, 0x44, 0xA3, 0xEA, 0xBF,
> - 0x1F, 0xFE, 0x20, 0xA3, 0x97, 0xEF, 0x30, 0xF9, 0x9F, 0x7C, 0xC5,
> 0x75, 0xF9, 0xDC, 0x29, 0xEC,
> - 0x72, 0xED, 0xD3, 0x58, 0xD2, 0x3C, 0xA3, 0x95, 0x64, 0xC9, 0xD4,
> 0xE0, 0xD8, 0xAF, 0xC2, 0x2E,
> - 0x21, 0x02, 0xE1, 0xFC, 0x29, 0xB0, 0x63, 0x9B, 0x46, 0x2C, 0xB4,
> 0x6C, 0x59, 0x7E, 0x51, 0xA8,
> - 0x0F, 0x33, 0x92, 0x94, 0x60, 0x99, 0x4D, 0x31, 0x9D, 0xA3, 0x4E,
> 0x23, 0x11, 0xAD, 0xD9, 0xC4,
> - 0x03, 0xB9, 0x3D, 0x0C, 0x9F, 0x37, 0x94, 0x6F, 0xC7, 0x3E, 0xCE,
> 0xCF, 0x49, 0x09, 0x64, 0x19,
> - 0xF6, 0x8F, 0xE2, 0xE5, 0xCA, 0x0A, 0x3C, 0x90, 0x41, 0xD2, 0xA4,
> 0x37, 0xEB, 0x47, 0xEC, 0x54,
> - 0x5A, 0xD0, 0xFD, 0xE4, 0x36, 0x5C, 0x8A, 0xB4, 0x8A, 0x94, 0xF9,
> 0x58, 0x07, 0xF5, 0xC8, 0x33,
> - 0x76, 0x62, 0xD2, 0xD5, 0x84, 0xCF, 0x85, 0xF9, 0x0C, 0x8F, 0xF6,
> 0xF7, 0xEC, 0xE8, 0xA8, 0xA3,
> - 0x17, 0x7C, 0xC1, 0x5D, 0x06, 0x19, 0x41, 0x06, 0xC6, 0x58, 0x54,
> 0xE0, 0x1B, 0x3B, 0x72, 0xA2,
> - 0x64, 0x89, 0xF5, 0x5E, 0x7C, 0x05, 0x2F, 0xE5, 0x2D, 0x98, 0x27,
> 0x61, 0x97, 0x41, 0x2C, 0x20,
> - 0x59, 0x81, 0x0C, 0x9D, 0xC1, 0x0F, 0xD9, 0x06, 0x75, 0x3D, 0x32,
> 0xFA, 0x0F, 0xBF, 0x74, 0xF4,
> - 0xE2, 0x9C, 0x7E, 0xDD, 0x67, 0x9F, 0x1B, 0x61, 0x89, 0xAB, 0xD6,
> 0x85, 0x87, 0x1F, 0xC9, 0xBF,
> - 0x07, 0x60, 0xF3, 0x33
> -};
> -
> -//
> -// Embedded PKCS7 signedData (by signing TestBin with TestSub
> Certificate, and Timestamped)
> -//
> -UINT8 P7Embedded[3330] = {
> - 0x30, 0x82, 0x0C, 0xFE, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7,
> 0x0D, 0x01, 0x07, 0x02, 0xA0,
> - 0x82, 0x0C, 0xEF, 0x30, 0x82, 0x0C, 0xEB, 0x02, 0x01, 0x01, 0x31,
> 0x0F, 0x30, 0x0D, 0x06, 0x09,
> - 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, 0x00,
> 0x30, 0x4F, 0x06, 0x09, 0x2A,
> - 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x07, 0x01, 0xA0, 0x42, 0x04,
> 0x40, 0x48, 0x65, 0x6C, 0x6C,
> - 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64, 0x21, 0x0D, 0x0A, 0x54,
> 0x65, 0x73, 0x74, 0x20, 0x66,
> - 0x6F, 0x72, 0x20, 0x50, 0x4B, 0x43, 0x53, 0x37, 0x20, 0x42, 0x6C,
> 0x6F, 0x62, 0x20, 0x44, 0x61,
> - 0x74, 0x61, 0x20, 0x53, 0x69, 0x67, 0x6E, 0x69, 0x6E, 0x67, 0x20,
> 0x26, 0x20, 0x56, 0x65, 0x72,
> - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2E, 0x0D,
> 0x0A, 0xA0, 0x82, 0x02, 0xF3,
> - 0x30, 0x82, 0x02, 0xEF, 0x30, 0x82, 0x01, 0xDB, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0xF9,
> - 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2, 0x7D,
> 0xC8, 0x72, 0xD6, 0x28, 0x30,
> - 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> - 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> - 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x32, 0x35, 0x32, 0x5A,
> - 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> - 0x12, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x07, 0x54, 0x65, 0x73, 0x74,
> - 0x53, 0x75, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09,
> 0x2A, 0x86, 0x48, 0x86, 0xF7,
> - 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00,
> 0x30, 0x82, 0x01, 0x0A, 0x02,
> - 0x82, 0x01, 0x01, 0x00, 0xB1, 0x6D, 0x01, 0x2E, 0xC2, 0xEA, 0x72,
> 0x83, 0xDA, 0x47, 0xCF, 0xC2,
> - 0xB9, 0x03, 0xC5, 0x2D, 0x1E, 0x06, 0xA1, 0x36, 0xD2, 0x81, 0x7B,
> 0x51, 0xAA, 0x10, 0xDD, 0x74,
> - 0xCB, 0x57, 0x41, 0x1F, 0xFE, 0x5A, 0x9C, 0xA1, 0x81, 0x0A, 0xDF,
> 0x0A, 0x54, 0x38, 0xA2, 0xA5,
> - 0x35, 0xAF, 0xB3, 0xD0, 0x43, 0xC1, 0x11, 0xBB, 0xFD, 0x82, 0x4A,
> 0x64, 0xBF, 0x35, 0xE4, 0xC5,
> - 0x95, 0x1A, 0x2B, 0x6D, 0x3D, 0xA7, 0x06, 0x26, 0xBF, 0xBA, 0x3A,
> 0x92, 0x39, 0xC2, 0xB5, 0x24,
> - 0xA2, 0xE7, 0x91, 0x91, 0xD6, 0x83, 0x15, 0x4A, 0x45, 0x6A, 0x90,
> 0x43, 0xD5, 0x4E, 0x18, 0xD2,
> - 0xCE, 0xA7, 0xCA, 0x0B, 0x0A, 0x1E, 0x80, 0xE2, 0x97, 0xB3, 0x62,
> 0xC3, 0xAC, 0x36, 0x5A, 0x10,
> - 0x78, 0xB9, 0x87, 0xBA, 0xFB, 0x36, 0xE3, 0xC2, 0x39, 0x66, 0x68,
> 0x1C, 0x31, 0xD4, 0x32, 0xE3,
> - 0x4F, 0x62, 0x3A, 0x32, 0x4B, 0xC6, 0xF4, 0x56, 0xCD, 0xC1, 0xDF,
> 0x76, 0x52, 0x43, 0x4F, 0xB4,
> - 0x2E, 0x29, 0x06, 0x0A, 0x28, 0xB9, 0x03, 0xDD, 0x65, 0x81, 0x1A,
> 0x7A, 0x47, 0x2F, 0x86, 0xAB,
> - 0x37, 0xD9, 0xE3, 0x83, 0x6C, 0xE0, 0x7D, 0x74, 0x26, 0x16, 0x8F,
> 0xCC, 0x2C, 0x12, 0xBB, 0x06,
> - 0xD5, 0x7E, 0x3B, 0x5A, 0xE7, 0x22, 0x1B, 0x41, 0xB3, 0x9F, 0xA4,
> 0x8C, 0x09, 0xC6, 0x8B, 0x4C,
> - 0x60, 0xF1, 0x9D, 0xDE, 0x94, 0x05, 0x19, 0xC4, 0xE3, 0x10, 0x31,
> 0x02, 0xE0, 0xEF, 0x4B, 0x7B,
> - 0x76, 0xBF, 0xB2, 0xC3, 0xC8, 0x13, 0x67, 0xEF, 0x15, 0xF5, 0xAB,
> 0x17, 0xF9, 0x8B, 0x99, 0x09,
> - 0xEC, 0x17, 0xC7, 0x94, 0xDB, 0x3E, 0xAE, 0x88, 0x49, 0x4B, 0xBC,
> 0x28, 0x02, 0x57, 0xF6, 0xED,
> - 0xF7, 0xDE, 0x1F, 0xEA, 0x67, 0x86, 0xCA, 0x40, 0x61, 0x0F, 0x2C,
> 0xBA, 0xCD, 0xC0, 0x55, 0x5E,
> - 0xDC, 0xF8, 0xCD, 0x53, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x48,
> 0x30, 0x46, 0x30, 0x44, 0x06,
> - 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10, 0x84,
> 0xB5, 0x25, 0xA3, 0xD7, 0x99,
> - 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A, 0xA1,
> 0x15, 0x30, 0x13, 0x31, 0x11,
> - 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65,
> 0x73, 0x74, 0x52, 0x6F, 0x6F,
> - 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B,
> 0x49, 0xA7, 0xD3, 0x63, 0x4F,
> - 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02,
> 0x1D, 0x05, 0x00, 0x03, 0x82,
> - 0x01, 0x01, 0x00, 0x10, 0x5F, 0xC3, 0xCD, 0x68, 0x05, 0x16, 0x26,
> 0x94, 0xBE, 0xEC, 0x30, 0x4A,
> - 0x78, 0x58, 0x7A, 0xC8, 0xAC, 0x9E, 0xDF, 0xF3, 0x8A, 0x31, 0x33,
> 0x92, 0x24, 0x18, 0xF5, 0x88,
> - 0x1E, 0xBC, 0xFA, 0xA0, 0xC2, 0x14, 0x74, 0xE1, 0x7B, 0x98, 0x84,
> 0x8B, 0xF5, 0x27, 0x2C, 0x70,
> - 0x99, 0x8E, 0x98, 0x11, 0x01, 0xF7, 0xC9, 0x52, 0xD2, 0x1B, 0x36,
> 0xC9, 0x9F, 0xC5, 0x80, 0x7C,
> - 0xCF, 0xD8, 0xC1, 0xC9, 0x40, 0xF9, 0x91, 0x27, 0xD0, 0x90, 0x3D,
> 0x1A, 0xDB, 0x60, 0x58, 0x66,
> - 0x4D, 0xD7, 0xA4, 0x98, 0x37, 0x21, 0x93, 0xB7, 0x87, 0xD3, 0x71,
> 0x6B, 0x36, 0xA2, 0x40, 0xFC,
> - 0x19, 0x51, 0x80, 0x1D, 0xD6, 0xEF, 0x9E, 0x5B, 0xD9, 0x7B, 0x02,
> 0x04, 0xE4, 0x53, 0x40, 0x5F,
> - 0x3E, 0xE2, 0x4D, 0xEB, 0x19, 0x9E, 0xAF, 0xC5, 0x5B, 0x8E, 0x4F,
> 0x6B, 0x7B, 0xC8, 0xB4, 0xC9,
> - 0x35, 0xA3, 0x8B, 0xB4, 0x7B, 0x97, 0x08, 0x49, 0x3E, 0x9B, 0x20,
> 0x49, 0x81, 0x1C, 0x85, 0xE5,
> - 0xEF, 0x58, 0x46, 0x4F, 0x63, 0xF7, 0x49, 0x3A, 0x1B, 0x83, 0xCD,
> 0x7C, 0x9B, 0xC2, 0xF8, 0xC2,
> - 0x5D, 0x62, 0xD2, 0x4D, 0x18, 0xAD, 0x87, 0x77, 0x54, 0x6F, 0x8C,
> 0x6A, 0x31, 0x64, 0x2E, 0xFD,
> - 0x29, 0x8F, 0xDF, 0xC8, 0xC7, 0x35, 0x91, 0xE4, 0x76, 0xA1, 0x0E,
> 0x03, 0x8F, 0xC1, 0xBF, 0x35,
> - 0x4B, 0x2A, 0xF1, 0x7F, 0x8B, 0x0F, 0xC3, 0x9D, 0x5D, 0x41, 0x40,
> 0x8A, 0x05, 0xEB, 0x53, 0xE6,
> - 0xF4, 0x03, 0x33, 0x07, 0xAB, 0x21, 0x51, 0x50, 0x37, 0xB5, 0x65,
> 0x43, 0x4D, 0x25, 0x8B, 0xB0,
> - 0x77, 0x47, 0xA3, 0xC7, 0x1C, 0xC7, 0xE7, 0xB4, 0x8B, 0x4D, 0x9E,
> 0x5B, 0x77, 0xE3, 0x36, 0x69,
> - 0xB4, 0x8F, 0x0D, 0x6C, 0xD0, 0xC5, 0x9D, 0x8D, 0xD2, 0x49, 0xED,
> 0x5B, 0x21, 0x61, 0xF6, 0x2C,
> - 0x74, 0x84, 0xA1, 0x31, 0x82, 0x09, 0x8B, 0x30, 0x82, 0x09, 0x87,
> 0x02, 0x01, 0x01, 0x30, 0x27,
> - 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03,
> 0x13, 0x08, 0x54, 0x65, 0x73,
> - 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x02, 0x10, 0xF9, 0xCD, 0x3A, 0x06,
> 0x4D, 0x83, 0x34, 0xAB, 0x4A,
> - 0x5C, 0xF2, 0x7D, 0xC8, 0x72, 0xD6, 0x28, 0x30, 0x0D, 0x06, 0x09,
> 0x60, 0x86, 0x48, 0x01, 0x65,
> - 0x03, 0x04, 0x02, 0x01, 0x05, 0x00, 0x30, 0x0D, 0x06, 0x09, 0x2A,
> 0x86, 0x48, 0x86, 0xF7, 0x0D,
> - 0x01, 0x01, 0x01, 0x05, 0x00, 0x04, 0x82, 0x01, 0x00, 0x22, 0xB9,
> 0x4A, 0x53, 0xA4, 0x35, 0xF3,
> - 0xDA, 0xF3, 0xA9, 0x37, 0x12, 0xF7, 0x5B, 0x8F, 0xFA, 0x14, 0x57,
> 0x86, 0x59, 0xA6, 0x9A, 0xC2,
> - 0x7C, 0x1C, 0x79, 0xC3, 0xD2, 0xF8, 0x84, 0x6C, 0x4E, 0x14, 0x44,
> 0x6C, 0x56, 0x45, 0x3C, 0x38,
> - 0xC3, 0x6B, 0x12, 0x02, 0x97, 0xB7, 0x86, 0xA7, 0xAC, 0x2E, 0x46,
> 0xA8, 0xF9, 0xA9, 0x57, 0x13,
> - 0x28, 0xCE, 0x37, 0x57, 0x1C, 0xC9, 0xCD, 0x8E, 0xC4, 0xFE, 0x56,
> 0xC6, 0x97, 0x11, 0x2E, 0xFA,
> - 0xE0, 0x09, 0x91, 0xF7, 0x30, 0xF9, 0x45, 0x2C, 0x41, 0xAA, 0xAF,
> 0xFF, 0x3D, 0x55, 0xCB, 0x89,
> - 0x0A, 0xFE, 0xF6, 0x60, 0xD4, 0xDF, 0x64, 0xF6, 0x1C, 0xDD, 0x8C,
> 0x84, 0x2F, 0xB6, 0x67, 0x1D,
> - 0xD7, 0xE2, 0xB9, 0x9A, 0x04, 0x07, 0xF8, 0xDC, 0x5B, 0xA3, 0x12,
> 0x91, 0x08, 0x00, 0x85, 0x95,
> - 0xA1, 0x17, 0x8D, 0x93, 0x49, 0x6A, 0xAA, 0x4E, 0xE4, 0xF5, 0x4B,
> 0xDE, 0x22, 0x21, 0xE2, 0x57,
> - 0x62, 0x7D, 0x6E, 0xC1, 0x31, 0x38, 0x2C, 0x89, 0x93, 0x07, 0x42,
> 0x5B, 0xDB, 0x56, 0x71, 0x39,
> - 0x1F, 0xED, 0xCA, 0x43, 0x67, 0x88, 0xC9, 0x8E, 0x23, 0x0D, 0x68,
> 0x5B, 0x7E, 0x38, 0x52, 0x5C,
> - 0x96, 0xE7, 0x5F, 0x32, 0x2F, 0x5F, 0x37, 0x4E, 0x9E, 0x27, 0xA5,
> 0x79, 0xF9, 0x03, 0xAB, 0x3C,
> - 0xB5, 0x20, 0x1E, 0x01, 0x48, 0x9B, 0xB8, 0x11, 0x12, 0xB2, 0xCA,
> 0x8B, 0x69, 0x08, 0x5F, 0x78,
> - 0x80, 0x09, 0x14, 0xA0, 0x3D, 0x57, 0x2B, 0xBB, 0x75, 0x9A, 0xFF,
> 0x33, 0xA2, 0x2B, 0x1C, 0x3B,
> - 0xEE, 0xBF, 0xE5, 0x8B, 0x34, 0xDB, 0x54, 0x15, 0xE2, 0x5E, 0x13,
> 0x56, 0x02, 0x5D, 0xB9, 0x3D,
> - 0x5A, 0x47, 0x59, 0x5D, 0x86, 0xC1, 0x75, 0xED, 0x4E, 0x12, 0xD7,
> 0x69, 0x76, 0xB2, 0xED, 0xBA,
> - 0x65, 0xA2, 0x1A, 0xDB, 0x01, 0x81, 0x62, 0x7E, 0x07, 0xA1, 0x82,
> 0x08, 0x35, 0x30, 0x82, 0x08,
> - 0x31, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01, 0x82, 0x37, 0x03,
> 0x03, 0x01, 0x31, 0x82, 0x08,
> - 0x21, 0x30, 0x82, 0x08, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86,
> 0xF7, 0x0D, 0x01, 0x07, 0x02,
> - 0xA0, 0x82, 0x08, 0x0E, 0x30, 0x82, 0x08, 0x0A, 0x02, 0x01, 0x03,
> 0x31, 0x0B, 0x30, 0x09, 0x06,
> - 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1A, 0x05, 0x00, 0x30, 0x81, 0xF5,
> 0x06, 0x0B, 0x2A, 0x86, 0x48,
> - 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x10, 0x01, 0x04, 0xA0, 0x81, 0xE5,
> 0x04, 0x81, 0xE2, 0x30, 0x81,
> - 0xDF, 0x02, 0x01, 0x01, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01,
> 0xB2, 0x31, 0x02, 0x01, 0x01,
> - 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1A,
> 0x05, 0x00, 0x04, 0x14, 0x0B,
> - 0x23, 0xE5, 0xBC, 0x00, 0x34, 0x5B, 0x80, 0x78, 0x3D, 0xA8, 0x7F,
> 0x2A, 0xEA, 0x2B, 0xD1, 0xFF,
> - 0xA3, 0x5D, 0x26, 0x02, 0x14, 0x1D, 0xB9, 0x80, 0x23, 0xB7, 0x31,
> 0xAC, 0xC2, 0x54, 0x58, 0x3A,
> - 0xC7, 0x47, 0x58, 0x96, 0x28, 0x22, 0x2C, 0x88, 0x37, 0x18, 0x0F,
> 0x32, 0x30, 0x31, 0x35, 0x30,
> - 0x38, 0x31, 0x39, 0x30, 0x31, 0x35, 0x35, 0x32, 0x38, 0x5A, 0xA0,
> 0x81, 0x83, 0xA4, 0x81, 0x80,
> - 0x30, 0x7E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
> 0x13, 0x02, 0x47, 0x42, 0x31,
> - 0x1B, 0x30, 0x19, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x12, 0x47,
> 0x72, 0x65, 0x61, 0x74, 0x65,
> - 0x72, 0x20, 0x4D, 0x61, 0x6E, 0x63, 0x68, 0x65, 0x73, 0x74, 0x65,
> 0x72, 0x31, 0x10, 0x30, 0x0E,
> - 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x07, 0x53, 0x61, 0x6C, 0x66,
> 0x6F, 0x72, 0x64, 0x31, 0x1A,
> - 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x13, 0x11, 0x43, 0x4F,
> 0x4D, 0x4F, 0x44, 0x4F, 0x20,
> - 0x43, 0x41, 0x20, 0x4C, 0x69, 0x6D, 0x69, 0x74, 0x65, 0x64, 0x31,
> 0x24, 0x30, 0x22, 0x06, 0x03,
> - 0x55, 0x04, 0x03, 0x13, 0x1B, 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F,
> 0x20, 0x54, 0x69, 0x6D, 0x65,
> - 0x20, 0x53, 0x74, 0x61, 0x6D, 0x70, 0x69, 0x6E, 0x67, 0x20, 0x53,
> 0x69, 0x67, 0x6E, 0x65, 0x72,
> - 0xA0, 0x82, 0x04, 0x98, 0x30, 0x82, 0x04, 0x94, 0x30, 0x82, 0x03,
> 0x7C, 0xA0, 0x03, 0x02, 0x01,
> - 0x02, 0x02, 0x11, 0x00, 0x9F, 0xEA, 0xC8, 0x11, 0xB0, 0xF1, 0x62,
> 0x47, 0xA5, 0xFC, 0x20, 0xD8,
> - 0x05, 0x23, 0xAC, 0xE6, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48,
> 0x86, 0xF7, 0x0D, 0x01, 0x01,
> - 0x05, 0x05, 0x00, 0x30, 0x81, 0x95, 0x31, 0x0B, 0x30, 0x09, 0x06,
> 0x03, 0x55, 0x04, 0x06, 0x13,
> - 0x02, 0x55, 0x53, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04,
> 0x08, 0x13, 0x02, 0x55, 0x54,
> - 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x0E,
> 0x53, 0x61, 0x6C, 0x74, 0x20,
> - 0x4C, 0x61, 0x6B, 0x65, 0x20, 0x43, 0x69, 0x74, 0x79, 0x31, 0x1E,
> 0x30, 0x1C, 0x06, 0x03, 0x55,
> - 0x04, 0x0A, 0x13, 0x15, 0x54, 0x68, 0x65, 0x20, 0x55, 0x53, 0x45,
> 0x52, 0x54, 0x52, 0x55, 0x53,
> - 0x54, 0x20, 0x4E, 0x65, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x31, 0x21,
> 0x30, 0x1F, 0x06, 0x03, 0x55,
> - 0x04, 0x0B, 0x13, 0x18, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F,
> 0x77, 0x77, 0x77, 0x2E, 0x75,
> - 0x73, 0x65, 0x72, 0x74, 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F,
> 0x6D, 0x31, 0x1D, 0x30, 0x1B,
> - 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x14, 0x55, 0x54, 0x4E, 0x2D,
> 0x55, 0x53, 0x45, 0x52, 0x46,
> - 0x69, 0x72, 0x73, 0x74, 0x2D, 0x4F, 0x62, 0x6A, 0x65, 0x63, 0x74,
> 0x30, 0x1E, 0x17, 0x0D, 0x31,
> - 0x35, 0x30, 0x35, 0x30, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
> 0x5A, 0x17, 0x0D, 0x31, 0x35,
> - 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5A,
> 0x30, 0x7E, 0x31, 0x0B, 0x30,
> - 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x47, 0x42, 0x31,
> 0x1B, 0x30, 0x19, 0x06, 0x03,
> - 0x55, 0x04, 0x08, 0x13, 0x12, 0x47, 0x72, 0x65, 0x61, 0x74, 0x65,
> 0x72, 0x20, 0x4D, 0x61, 0x6E,
> - 0x63, 0x68, 0x65, 0x73, 0x74, 0x65, 0x72, 0x31, 0x10, 0x30, 0x0E,
> 0x06, 0x03, 0x55, 0x04, 0x07,
> - 0x13, 0x07, 0x53, 0x61, 0x6C, 0x66, 0x6F, 0x72, 0x64, 0x31, 0x1A,
> 0x30, 0x18, 0x06, 0x03, 0x55,
> - 0x04, 0x0A, 0x13, 0x11, 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F, 0x20,
> 0x43, 0x41, 0x20, 0x4C, 0x69,
> - 0x6D, 0x69, 0x74, 0x65, 0x64, 0x31, 0x24, 0x30, 0x22, 0x06, 0x03,
> 0x55, 0x04, 0x03, 0x13, 0x1B,
> - 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F, 0x20, 0x54, 0x69, 0x6D, 0x65,
> 0x20, 0x53, 0x74, 0x61, 0x6D,
> - 0x70, 0x69, 0x6E, 0x67, 0x20, 0x53, 0x69, 0x67, 0x6E, 0x65, 0x72,
> 0x30, 0x82, 0x01, 0x22, 0x30,
> - 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x03, 0x82,
> - 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A, 0x02, 0x82, 0x01, 0x01,
> 0x00, 0xBC, 0x35, 0xA0, 0x36,
> - 0x70, 0x22, 0x81, 0x11, 0xC3, 0xB2, 0x83, 0xB9, 0xD3, 0x28, 0xC6,
> 0x36, 0xCD, 0x25, 0x6B, 0xA9,
> - 0x7B, 0xB2, 0x1C, 0xF6, 0x9B, 0x51, 0x9C, 0xEF, 0x35, 0xF4, 0xED,
> 0x08, 0x8E, 0x5E, 0x38, 0x08,
> - 0xF8, 0x77, 0x3C, 0x0A, 0x42, 0xE0, 0xF3, 0x70, 0xDC, 0xA3, 0xD7,
> 0xCA, 0xF5, 0x4C, 0x0B, 0xCF,
> - 0xFF, 0x22, 0x9C, 0x0A, 0x7E, 0x68, 0xD6, 0x09, 0xA2, 0x2A, 0x84,
> 0x7B, 0xA6, 0x9D, 0xB4, 0xA9,
> - 0xC1, 0x33, 0xE2, 0xEF, 0x1F, 0x17, 0x48, 0xCA, 0x3A, 0xCD, 0x46,
> 0xE6, 0xC5, 0xAA, 0x77, 0xBD,
> - 0xE3, 0x77, 0x9A, 0xFA, 0x47, 0x53, 0x40, 0x28, 0x59, 0x43, 0x93,
> 0xF1, 0xA4, 0x81, 0xEA, 0xEF,
> - 0x80, 0xB5, 0x4F, 0xA7, 0x08, 0xCE, 0xBA, 0x6E, 0xBC, 0xCA, 0x76,
> 0x0C, 0x97, 0x64, 0x59, 0x86,
> - 0x24, 0xBB, 0x3D, 0x82, 0x90, 0xA8, 0x55, 0xB1, 0x92, 0xD3, 0xA0,
> 0xA7, 0x05, 0xAC, 0x9F, 0x53,
> - 0x25, 0x08, 0x10, 0x47, 0x99, 0xCD, 0x98, 0xDE, 0x68, 0xE5, 0xB4,
> 0x50, 0x78, 0xA3, 0xAF, 0x01,
> - 0xCC, 0x59, 0x43, 0x58, 0xE4, 0x76, 0x6E, 0x7E, 0xAC, 0xC7, 0xE2,
> 0x9E, 0x1F, 0x4F, 0xB0, 0x47,
> - 0x2D, 0xC8, 0x0C, 0xA3, 0x49, 0x27, 0x80, 0x75, 0x8C, 0xBB, 0x06,
> 0x91, 0x65, 0x0F, 0x90, 0x9B,
> - 0xF4, 0xBA, 0xD1, 0x81, 0xC8, 0x5C, 0x6A, 0xEC, 0x14, 0xE9, 0x25,
> 0x09, 0xBF, 0x23, 0x16, 0xF4,
> - 0x95, 0x46, 0x40, 0x40, 0x21, 0xBB, 0x83, 0x96, 0xFD, 0x86, 0x1F,
> 0x7A, 0xC8, 0x0D, 0x10, 0x8E,
> - 0xA2, 0xF8, 0x19, 0x07, 0x58, 0x7F, 0x9F, 0xBD, 0x37, 0x02, 0x60,
> 0xF2, 0xA4, 0xE9, 0x9D, 0x44,
> - 0x3F, 0x30, 0x05, 0xE4, 0xA7, 0x70, 0x99, 0x51, 0x9A, 0xE8, 0x17,
> 0xF1, 0x55, 0xCA, 0xB2, 0x61,
> - 0x89, 0x65, 0x46, 0xA7, 0x6A, 0xF2, 0x58, 0x46, 0x7E, 0xAA, 0xA0,
> 0x07, 0x02, 0x03, 0x01, 0x00,
> - 0x01, 0xA3, 0x81, 0xF4, 0x30, 0x81, 0xF1, 0x30, 0x1F, 0x06, 0x03,
> 0x55, 0x1D, 0x23, 0x04, 0x18,
> - 0x30, 0x16, 0x80, 0x14, 0xDA, 0xED, 0x64, 0x74, 0x14, 0x9C, 0x14,
> 0x3C, 0xAB, 0xDD, 0x99, 0xA9,
> - 0xBD, 0x5B, 0x28, 0x4D, 0x8B, 0x3C, 0xC9, 0xD8, 0x30, 0x1D, 0x06,
> 0x03, 0x55, 0x1D, 0x0E, 0x04,
> - 0x16, 0x04, 0x14, 0x2E, 0x2D, 0xB0, 0x0A, 0x44, 0x4A, 0xD3, 0x87,
> 0xC0, 0x02, 0x07, 0xCE, 0x97,
> - 0x7D, 0x50, 0x62, 0x20, 0xFD, 0x0F, 0x83, 0x30, 0x0E, 0x06, 0x03,
> 0x55, 0x1D, 0x0F, 0x01, 0x01,
> - 0xFF, 0x04, 0x04, 0x03, 0x02, 0x06, 0xC0, 0x30, 0x0C, 0x06, 0x03,
> 0x55, 0x1D, 0x13, 0x01, 0x01,
> - 0xFF, 0x04, 0x02, 0x30, 0x00, 0x30, 0x16, 0x06, 0x03, 0x55, 0x1D,
> 0x25, 0x01, 0x01, 0xFF, 0x04,
> - 0x0C, 0x30, 0x0A, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x03, 0x08, 0x30, 0x42, 0x06,
> - 0x03, 0x55, 0x1D, 0x1F, 0x04, 0x3B, 0x30, 0x39, 0x30, 0x37, 0xA0,
> 0x35, 0xA0, 0x33, 0x86, 0x31,
> - 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x63, 0x72, 0x6C, 0x2E,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> - 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x2F, 0x55, 0x54,
> 0x4E, 0x2D, 0x55, 0x53, 0x45,
> - 0x52, 0x46, 0x69, 0x72, 0x73, 0x74, 0x2D, 0x4F, 0x62, 0x6A, 0x65,
> 0x63, 0x74, 0x2E, 0x63, 0x72,
> - 0x6C, 0x30, 0x35, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x01, 0x01, 0x04, 0x29, 0x30,
> - 0x27, 0x30, 0x25, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x30, 0x01, 0x86, 0x19, 0x68,
> - 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x6F, 0x63, 0x73, 0x70, 0x2E,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> - 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x0D, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> - 0xF7, 0x0D, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01,
> 0x00, 0x0D, 0xBB, 0xAD, 0x60,
> - 0x11, 0x1B, 0xB5, 0xF0, 0x0D, 0xCC, 0xE6, 0x48, 0x3A, 0x7A, 0x3E,
> 0x0E, 0x33, 0xDC, 0x1C, 0xB9,
> - 0xEA, 0xD6, 0x20, 0xFE, 0xA3, 0x4D, 0xD0, 0xCC, 0x76, 0x4E, 0xE8,
> 0x18, 0xD8, 0x79, 0xDF, 0xD3,
> - 0x4F, 0x9A, 0x42, 0x64, 0x23, 0x8A, 0x29, 0x72, 0x8A, 0x3A, 0x6C,
> 0x66, 0xA6, 0x3C, 0x3A, 0x17,
> - 0xA8, 0x70, 0x45, 0x65, 0xC6, 0x73, 0xC3, 0xD0, 0xCE, 0x89, 0x54,
> 0xFB, 0xAC, 0x69, 0x0F, 0x58,
> - 0xB0, 0x19, 0xCB, 0x86, 0x9F, 0x7E, 0xB9, 0x7E, 0xEB, 0x51, 0x92,
> 0xBF, 0x9B, 0xDD, 0xEB, 0xD1,
> - 0x65, 0xF0, 0x25, 0x7B, 0x88, 0x7C, 0xDE, 0xBD, 0xA5, 0xC8, 0xB5,
> 0x14, 0x51, 0xBC, 0xC0, 0x81,
> - 0x30, 0x8A, 0x85, 0x38, 0x7B, 0xE6, 0x79, 0xFE, 0x67, 0x55, 0x93,
> 0x87, 0xFE, 0x4F, 0xE8, 0x8D,
> - 0x0E, 0xED, 0xF3, 0x72, 0x92, 0xB5, 0xC2, 0x89, 0x80, 0x6D, 0xD1,
> 0x59, 0xE3, 0x1D, 0x0D, 0xEA,
> - 0xB1, 0x38, 0xEE, 0x03, 0x9D, 0x00, 0x19, 0xA5, 0xAB, 0x21, 0x9B,
> 0x79, 0xC3, 0xCC, 0xC2, 0x3E,
> - 0x68, 0x7E, 0xBD, 0xC9, 0x4D, 0x69, 0x4D, 0xB4, 0x64, 0x51, 0xFB,
> 0xB2, 0x28, 0x74, 0xE2, 0x53,
> - 0x89, 0xCE, 0x9D, 0xFA, 0xAD, 0xE2, 0xDB, 0xCE, 0xAB, 0x7B, 0x7E,
> 0x06, 0x44, 0x74, 0xFD, 0x0A,
> - 0xA3, 0xC9, 0xB7, 0xA7, 0x30, 0xCD, 0x49, 0xD2, 0x92, 0x64, 0xF1,
> 0x22, 0xA6, 0xB8, 0x28, 0x45,
> - 0x74, 0x79, 0xE9, 0xA7, 0xCE, 0x3B, 0x33, 0xF9, 0x83, 0x50, 0x94,
> 0x7D, 0x68, 0xC0, 0x1D, 0x49,
> - 0xC7, 0x60, 0x78, 0x7A, 0x3C, 0x64, 0x26, 0xD5, 0xBE, 0xFA, 0x0A,
> 0x6D, 0xE4, 0x1E, 0xE1, 0x09,
> - 0x53, 0x8F, 0xA9, 0xC5, 0x23, 0xAC, 0xC7, 0x9D, 0x61, 0x42, 0x21,
> 0xF0, 0x2C, 0x16, 0x71, 0x49,
> - 0x3B, 0x10, 0xAF, 0x2C, 0x6F, 0x1A, 0xE6, 0x31, 0xF1, 0x14, 0xFD,
> 0x6C, 0x31, 0x82, 0x02, 0x62,
> - 0x30, 0x82, 0x02, 0x5E, 0x02, 0x01, 0x01, 0x30, 0x81, 0xAB, 0x30,
> 0x81, 0x95, 0x31, 0x0B, 0x30,
> - 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31,
> 0x0B, 0x30, 0x09, 0x06, 0x03,
> - 0x55, 0x04, 0x08, 0x13, 0x02, 0x55, 0x54, 0x31, 0x17, 0x30, 0x15,
> 0x06, 0x03, 0x55, 0x04, 0x07,
> - 0x13, 0x0E, 0x53, 0x61, 0x6C, 0x74, 0x20, 0x4C, 0x61, 0x6B, 0x65,
> 0x20, 0x43, 0x69, 0x74, 0x79,
> - 0x31, 0x1E, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x13, 0x15,
> 0x54, 0x68, 0x65, 0x20, 0x55,
> - 0x53, 0x45, 0x52, 0x54, 0x52, 0x55, 0x53, 0x54, 0x20, 0x4E, 0x65,
> 0x74, 0x77, 0x6F, 0x72, 0x6B,
> - 0x31, 0x21, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x13, 0x18,
> 0x68, 0x74, 0x74, 0x70, 0x3A,
> - 0x2F, 0x2F, 0x77, 0x77, 0x77, 0x2E, 0x75, 0x73, 0x65, 0x72, 0x74,
> 0x72, 0x75, 0x73, 0x74, 0x2E,
> - 0x63, 0x6F, 0x6D, 0x31, 0x1D, 0x30, 0x1B, 0x06, 0x03, 0x55, 0x04,
> 0x03, 0x13, 0x14, 0x55, 0x54,
> - 0x4E, 0x2D, 0x55, 0x53, 0x45, 0x52, 0x46, 0x69, 0x72, 0x73, 0x74,
> 0x2D, 0x4F, 0x62, 0x6A, 0x65,
> - 0x63, 0x74, 0x02, 0x11, 0x00, 0x9F, 0xEA, 0xC8, 0x11, 0xB0, 0xF1,
> 0x62, 0x47, 0xA5, 0xFC, 0x20,
> - 0xD8, 0x05, 0x23, 0xAC, 0xE6, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E,
> 0x03, 0x02, 0x1A, 0x05, 0x00,
> - 0xA0, 0x81, 0x8C, 0x30, 0x1A, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86,
> 0xF7, 0x0D, 0x01, 0x09, 0x03,
> - 0x31, 0x0D, 0x06, 0x0B, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01,
> 0x09, 0x10, 0x01, 0x04, 0x30,
> - 0x1C, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09,
> 0x05, 0x31, 0x0F, 0x17, 0x0D,
> - 0x31, 0x35, 0x30, 0x38, 0x31, 0x39, 0x30, 0x31, 0x35, 0x35, 0x32,
> 0x38, 0x5A, 0x30, 0x23, 0x06,
> - 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x04, 0x31,
> 0x16, 0x04, 0x14, 0xD4, 0xD6,
> - 0xA6, 0x46, 0x5F, 0x10, 0xF2, 0x3F, 0x76, 0x67, 0x5E, 0x37, 0xEB,
> 0x89, 0xDD, 0xCD, 0xA9, 0xD2,
> - 0x78, 0x2E, 0x30, 0x2B, 0x06, 0x0B, 0x2A, 0x86, 0x48, 0x86, 0xF7,
> 0x0D, 0x01, 0x09, 0x10, 0x02,
> - 0x0C, 0x31, 0x1C, 0x30, 0x1A, 0x30, 0x18, 0x30, 0x16, 0x04, 0x14,
> 0xDF, 0x94, 0x6A, 0x5E, 0x50,
> - 0x30, 0x15, 0x77, 0x7F, 0xD2, 0x2F, 0x46, 0xB5, 0x62, 0x4E, 0xCD,
> 0x27, 0xBE, 0xE3, 0x76, 0x30,
> - 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x04, 0x82,
> - 0x01, 0x00, 0x60, 0x59, 0x47, 0x46, 0x6E, 0x02, 0x30, 0x14, 0x4D,
> 0xDE, 0xFB, 0x35, 0xF0, 0x88,
> - 0x85, 0x4F, 0xFF, 0x82, 0x25, 0x3B, 0x64, 0xDD, 0xC6, 0x4F, 0x76,
> 0xC7, 0x85, 0x8B, 0xD8, 0x36,
> - 0x23, 0x8B, 0xA4, 0x75, 0x75, 0xAD, 0xF2, 0x27, 0x00, 0xFB, 0x19,
> 0x83, 0xA0, 0x16, 0xEF, 0x45,
> - 0xAB, 0xF7, 0x18, 0xC9, 0x6F, 0xDE, 0xB8, 0xA5, 0xE6, 0x2C, 0xB0,
> 0xF2, 0x35, 0x6C, 0x90, 0x10,
> - 0xDC, 0x77, 0xB5, 0xC4, 0x0E, 0x88, 0x73, 0x01, 0x5B, 0xD5, 0x5A,
> 0x03, 0x3A, 0x76, 0x90, 0xFB,
> - 0x09, 0xAB, 0x36, 0x8D, 0xD3, 0x75, 0x21, 0xE7, 0xF4, 0x9A, 0x18,
> 0x37, 0x5B, 0x8A, 0xCA, 0xFF,
> - 0xC6, 0xD6, 0x00, 0xEA, 0xA9, 0x5B, 0xE6, 0xDB, 0xD5, 0x38, 0x89,
> 0x19, 0x77, 0x66, 0x86, 0x30,
> - 0x67, 0x06, 0x33, 0x49, 0xA6, 0x69, 0x60, 0x99, 0xA4, 0xB4, 0x53,
> 0x91, 0x31, 0x76, 0x0E, 0x6E,
> - 0x61, 0x7E, 0xDB, 0x37, 0xB5, 0x86, 0xA0, 0x47, 0x5E, 0x43, 0xAC,
> 0xFE, 0x44, 0xAA, 0x89, 0x65,
> - 0xB8, 0xAD, 0x7C, 0x7D, 0xA6, 0x1D, 0x69, 0x52, 0xB3, 0x3B, 0xB6,
> 0xD7, 0xCD, 0xA2, 0x44, 0x29,
> - 0x82, 0x22, 0xBD, 0x87, 0x4E, 0xA3, 0x3F, 0xFF, 0x85, 0x1D, 0xE7,
> 0xE4, 0xB1, 0xF6, 0xEB, 0xF8,
> - 0x32, 0xB1, 0x25, 0x6F, 0x14, 0x49, 0x10, 0x3E, 0x1E, 0x05, 0xED,
> 0x6C, 0x86, 0xC8, 0xFD, 0x79,
> - 0x2D, 0x45, 0xB1, 0x55, 0x19, 0xC2, 0x94, 0xE3, 0x8F, 0x31, 0x58,
> 0xCB, 0xBC, 0xA3, 0xAB, 0x89,
> - 0xFB, 0x94, 0xC5, 0x88, 0xE8, 0xA3, 0x28, 0xC4, 0xB0, 0xC5, 0x75,
> 0x15, 0xAA, 0xF4, 0xBB, 0x62,
> - 0x4B, 0xEE, 0x10, 0xA6, 0x13, 0x2E, 0x71, 0x29, 0xE6, 0x72, 0xD9,
> 0xFC, 0xA2, 0xF1, 0x0F, 0x65,
> - 0x58, 0xE1, 0xF0, 0x21, 0x31, 0x57, 0x8E, 0xF0, 0x3D, 0xF0, 0xC5,
> 0x69, 0xAC, 0xED, 0x7E, 0x1A,
> - 0x00, 0xA0
> -};
> -
> -//
> -// Detached PKCS7 signedData (by signing TestBin with TestSub
> Certificate)
> -//
> -UINT8 P7Detached[1138] = {
> -0x30, 0x82, 0x04, 0x6E, 0x02, 0x01, 0x01, 0x31, 0x0F, 0x30, 0x0D,
> 0x06, 0x09, 0x60, 0x86, 0x48,
> -0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, 0x00, 0x30, 0x0B, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> -0xF7, 0x0D, 0x01, 0x07, 0x01, 0xA0, 0x82, 0x02, 0xF3, 0x30, 0x82,
> 0x02, 0xEF, 0x30, 0x82, 0x01,
> -0xDB, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x10, 0xF9, 0xCD, 0x3A,
> 0x06, 0x4D, 0x83, 0x34, 0xAB,
> -0x4A, 0x5C, 0xF2, 0x7D, 0xC8, 0x72, 0xD6, 0x28, 0x30, 0x09, 0x06,
> 0x05, 0x2B, 0x0E, 0x03, 0x02,
> -0x1D, 0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03,
> 0x55, 0x04, 0x03, 0x13, 0x08,
> -0x54, 0x65, 0x73, 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x30, 0x1E, 0x17,
> 0x0D, 0x31, 0x35, 0x30, 0x38,
> -0x31, 0x33, 0x30, 0x36, 0x35, 0x32, 0x35, 0x32, 0x5A, 0x17, 0x0D,
> 0x33, 0x39, 0x31, 0x32, 0x33,
> -0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5A, 0x30, 0x12, 0x31,
> 0x10, 0x30, 0x0E, 0x06, 0x03,
> -0x55, 0x04, 0x03, 0x13, 0x07, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75,
> 0x62, 0x30, 0x82, 0x01, 0x22,
> -0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01,
> 0x01, 0x01, 0x05, 0x00, 0x03,
> -0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A, 0x02, 0x82, 0x01,
> 0x01, 0x00, 0xB1, 0x6D, 0x01,
> -0x2E, 0xC2, 0xEA, 0x72, 0x83, 0xDA, 0x47, 0xCF, 0xC2, 0xB9, 0x03,
> 0xC5, 0x2D, 0x1E, 0x06, 0xA1,
> -0x36, 0xD2, 0x81, 0x7B, 0x51, 0xAA, 0x10, 0xDD, 0x74, 0xCB, 0x57,
> 0x41, 0x1F, 0xFE, 0x5A, 0x9C,
> -0xA1, 0x81, 0x0A, 0xDF, 0x0A, 0x54, 0x38, 0xA2, 0xA5, 0x35, 0xAF,
> 0xB3, 0xD0, 0x43, 0xC1, 0x11,
> -0xBB, 0xFD, 0x82, 0x4A, 0x64, 0xBF, 0x35, 0xE4, 0xC5, 0x95, 0x1A,
> 0x2B, 0x6D, 0x3D, 0xA7, 0x06,
> -0x26, 0xBF, 0xBA, 0x3A, 0x92, 0x39, 0xC2, 0xB5, 0x24, 0xA2, 0xE7,
> 0x91, 0x91, 0xD6, 0x83, 0x15,
> -0x4A, 0x45, 0x6A, 0x90, 0x43, 0xD5, 0x4E, 0x18, 0xD2, 0xCE, 0xA7,
> 0xCA, 0x0B, 0x0A, 0x1E, 0x80,
> -0xE2, 0x97, 0xB3, 0x62, 0xC3, 0xAC, 0x36, 0x5A, 0x10, 0x78, 0xB9,
> 0x87, 0xBA, 0xFB, 0x36, 0xE3,
> -0xC2, 0x39, 0x66, 0x68, 0x1C, 0x31, 0xD4, 0x32, 0xE3, 0x4F, 0x62,
> 0x3A, 0x32, 0x4B, 0xC6, 0xF4,
> -0x56, 0xCD, 0xC1, 0xDF, 0x76, 0x52, 0x43, 0x4F, 0xB4, 0x2E, 0x29,
> 0x06, 0x0A, 0x28, 0xB9, 0x03,
> -0xDD, 0x65, 0x81, 0x1A, 0x7A, 0x47, 0x2F, 0x86, 0xAB, 0x37, 0xD9,
> 0xE3, 0x83, 0x6C, 0xE0, 0x7D,
> -0x74, 0x26, 0x16, 0x8F, 0xCC, 0x2C, 0x12, 0xBB, 0x06, 0xD5, 0x7E,
> 0x3B, 0x5A, 0xE7, 0x22, 0x1B,
> -0x41, 0xB3, 0x9F, 0xA4, 0x8C, 0x09, 0xC6, 0x8B, 0x4C, 0x60, 0xF1,
> 0x9D, 0xDE, 0x94, 0x05, 0x19,
> -0xC4, 0xE3, 0x10, 0x31, 0x02, 0xE0, 0xEF, 0x4B, 0x7B, 0x76, 0xBF,
> 0xB2, 0xC3, 0xC8, 0x13, 0x67,
> -0xEF, 0x15, 0xF5, 0xAB, 0x17, 0xF9, 0x8B, 0x99, 0x09, 0xEC, 0x17,
> 0xC7, 0x94, 0xDB, 0x3E, 0xAE,
> -0x88, 0x49, 0x4B, 0xBC, 0x28, 0x02, 0x57, 0xF6, 0xED, 0xF7, 0xDE,
> 0x1F, 0xEA, 0x67, 0x86, 0xCA,
> -0x40, 0x61, 0x0F, 0x2C, 0xBA, 0xCD, 0xC0, 0x55, 0x5E, 0xDC, 0xF8,
> 0xCD, 0x53, 0x02, 0x03, 0x01,
> -0x00, 0x01, 0xA3, 0x48, 0x30, 0x46, 0x30, 0x44, 0x06, 0x03, 0x55,
> 0x1D, 0x01, 0x04, 0x3D, 0x30,
> -0x3B, 0x80, 0x10, 0x84, 0xB5, 0x25, 0xA3, 0xD7, 0x99, 0x43, 0xE5,
> 0x71, 0xD3, 0x1D, 0xEE, 0x15,
> -0x25, 0x0C, 0x6A, 0xA1, 0x15, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F,
> 0x06, 0x03, 0x55, 0x04, 0x03,
> -0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x82,
> 0x10, 0x6F, 0xC8, 0x9C, 0x84,
> -0x28, 0x03, 0x85, 0x9B, 0x49, 0xA7, 0xD3, 0x63, 0x4F, 0xCC, 0x11,
> 0xF4, 0x30, 0x09, 0x06, 0x05,
> -0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01,
> 0x00, 0x10, 0x5F, 0xC3, 0xCD,
> -0x68, 0x05, 0x16, 0x26, 0x94, 0xBE, 0xEC, 0x30, 0x4A, 0x78, 0x58,
> 0x7A, 0xC8, 0xAC, 0x9E, 0xDF,
> -0xF3, 0x8A, 0x31, 0x33, 0x92, 0x24, 0x18, 0xF5, 0x88, 0x1E, 0xBC,
> 0xFA, 0xA0, 0xC2, 0x14, 0x74,
> -0xE1, 0x7B, 0x98, 0x84, 0x8B, 0xF5, 0x27, 0x2C, 0x70, 0x99, 0x8E,
> 0x98, 0x11, 0x01, 0xF7, 0xC9,
> -0x52, 0xD2, 0x1B, 0x36, 0xC9, 0x9F, 0xC5, 0x80, 0x7C, 0xCF, 0xD8,
> 0xC1, 0xC9, 0x40, 0xF9, 0x91,
> -0x27, 0xD0, 0x90, 0x3D, 0x1A, 0xDB, 0x60, 0x58, 0x66, 0x4D, 0xD7,
> 0xA4, 0x98, 0x37, 0x21, 0x93,
> -0xB7, 0x87, 0xD3, 0x71, 0x6B, 0x36, 0xA2, 0x40, 0xFC, 0x19, 0x51,
> 0x80, 0x1D, 0xD6, 0xEF, 0x9E,
> -0x5B, 0xD9, 0x7B, 0x02, 0x04, 0xE4, 0x53, 0x40, 0x5F, 0x3E, 0xE2,
> 0x4D, 0xEB, 0x19, 0x9E, 0xAF,
> -0xC5, 0x5B, 0x8E, 0x4F, 0x6B, 0x7B, 0xC8, 0xB4, 0xC9, 0x35, 0xA3,
> 0x8B, 0xB4, 0x7B, 0x97, 0x08,
> -0x49, 0x3E, 0x9B, 0x20, 0x49, 0x81, 0x1C, 0x85, 0xE5, 0xEF, 0x58,
> 0x46, 0x4F, 0x63, 0xF7, 0x49,
> -0x3A, 0x1B, 0x83, 0xCD, 0x7C, 0x9B, 0xC2, 0xF8, 0xC2, 0x5D, 0x62,
> 0xD2, 0x4D, 0x18, 0xAD, 0x87,
> -0x77, 0x54, 0x6F, 0x8C, 0x6A, 0x31, 0x64, 0x2E, 0xFD, 0x29, 0x8F,
> 0xDF, 0xC8, 0xC7, 0x35, 0x91,
> -0xE4, 0x76, 0xA1, 0x0E, 0x03, 0x8F, 0xC1, 0xBF, 0x35, 0x4B, 0x2A,
> 0xF1, 0x7F, 0x8B, 0x0F, 0xC3,
> -0x9D, 0x5D, 0x41, 0x40, 0x8A, 0x05, 0xEB, 0x53, 0xE6, 0xF4, 0x03,
> 0x33, 0x07, 0xAB, 0x21, 0x51,
> -0x50, 0x37, 0xB5, 0x65, 0x43, 0x4D, 0x25, 0x8B, 0xB0, 0x77, 0x47,
> 0xA3, 0xC7, 0x1C, 0xC7, 0xE7,
> -0xB4, 0x8B, 0x4D, 0x9E, 0x5B, 0x77, 0xE3, 0x36, 0x69, 0xB4, 0x8F,
> 0x0D, 0x6C, 0xD0, 0xC5, 0x9D,
> -0x8D, 0xD2, 0x49, 0xED, 0x5B, 0x21, 0x61, 0xF6, 0x2C, 0x74, 0x84,
> 0xA1, 0x31, 0x82, 0x01, 0x52,
> -0x30, 0x82, 0x01, 0x4E, 0x02, 0x01, 0x01, 0x30, 0x27, 0x30, 0x13,
> 0x31, 0x11, 0x30, 0x0F, 0x06,
> -0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52,
> 0x6F, 0x6F, 0x74, 0x02, 0x10,
> -0xF9, 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2,
> 0x7D, 0xC8, 0x72, 0xD6, 0x28,
> -0x30, 0x0D, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04,
> 0x02, 0x01, 0x05, 0x00, 0x30,
> -0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x04, 0x82,
> -0x01, 0x00, 0x22, 0xB9, 0x4A, 0x53, 0xA4, 0x35, 0xF3, 0xDA, 0xF3,
> 0xA9, 0x37, 0x12, 0xF7, 0x5B,
> -0x8F, 0xFA, 0x14, 0x57, 0x86, 0x59, 0xA6, 0x9A, 0xC2, 0x7C, 0x1C,
> 0x79, 0xC3, 0xD2, 0xF8, 0x84,
> -0x6C, 0x4E, 0x14, 0x44, 0x6C, 0x56, 0x45, 0x3C, 0x38, 0xC3, 0x6B,
> 0x12, 0x02, 0x97, 0xB7, 0x86,
> -0xA7, 0xAC, 0x2E, 0x46, 0xA8, 0xF9, 0xA9, 0x57, 0x13, 0x28, 0xCE,
> 0x37, 0x57, 0x1C, 0xC9, 0xCD,
> -0x8E, 0xC4, 0xFE, 0x56, 0xC6, 0x97, 0x11, 0x2E, 0xFA, 0xE0, 0x09,
> 0x91, 0xF7, 0x30, 0xF9, 0x45,
> -0x2C, 0x41, 0xAA, 0xAF, 0xFF, 0x3D, 0x55, 0xCB, 0x89, 0x0A, 0xFE,
> 0xF6, 0x60, 0xD4, 0xDF, 0x64,
> -0xF6, 0x1C, 0xDD, 0x8C, 0x84, 0x2F, 0xB6, 0x67, 0x1D, 0xD7, 0xE2,
> 0xB9, 0x9A, 0x04, 0x07, 0xF8,
> -0xDC, 0x5B, 0xA3, 0x12, 0x91, 0x08, 0x00, 0x85, 0x95, 0xA1, 0x17,
> 0x8D, 0x93, 0x49, 0x6A, 0xAA,
> -0x4E, 0xE4, 0xF5, 0x4B, 0xDE, 0x22, 0x21, 0xE2, 0x57, 0x62, 0x7D,
> 0x6E, 0xC1, 0x31, 0x38, 0x2C,
> -0x89, 0x93, 0x07, 0x42, 0x5B, 0xDB, 0x56, 0x71, 0x39, 0x1F, 0xED,
> 0xCA, 0x43, 0x67, 0x88, 0xC9,
> -0x8E, 0x23, 0x0D, 0x68, 0x5B, 0x7E, 0x38, 0x52, 0x5C, 0x96, 0xE7,
> 0x5F, 0x32, 0x2F, 0x5F, 0x37,
> -0x4E, 0x9E, 0x27, 0xA5, 0x79, 0xF9, 0x03, 0xAB, 0x3C, 0xB5, 0x20,
> 0x1E, 0x01, 0x48, 0x9B, 0xB8,
> -0x11, 0x12, 0xB2, 0xCA, 0x8B, 0x69, 0x08, 0x5F, 0x78, 0x80, 0x09,
> 0x14, 0xA0, 0x3D, 0x57, 0x2B,
> -0xBB, 0x75, 0x9A, 0xFF, 0x33, 0xA2, 0x2B, 0x1C, 0x3B, 0xEE, 0xBF,
> 0xE5, 0x8B, 0x34, 0xDB, 0x54,
> -0x15, 0xE2, 0x5E, 0x13, 0x56, 0x02, 0x5D, 0xB9, 0x3D, 0x5A, 0x47,
> 0x59, 0x5D, 0x86, 0xC1, 0x75,
> -0xED, 0x4E, 0x12, 0xD7, 0x69, 0x76, 0xB2, 0xED, 0xBA, 0x65, 0xA2,
> 0x1A, 0xDB, 0x01, 0x81, 0x62,
> -0x7E, 0x07
> -};
> -
> -//
> -// The Comodo Time Stamping Signer Certificate Used for the
> verification of TimeStamp signature
> -// which was retrieved from signed-timestamped TestBin binary.
> -//
> -UINT8 TSRootCert[1176] = {
> - 0x30, 0x82, 0x04, 0x94, 0x30, 0x82, 0x03, 0x7c, 0xa0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x11, 0x00,
> - 0x9f, 0xea, 0xc8, 0x11, 0xb0, 0xf1, 0x62, 0x47, 0xa5, 0xfc, 0x20,
> 0xd8, 0x05, 0x23, 0xac, 0xe6,
> - 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
> 0x01, 0x05, 0x05, 0x00, 0x30,
> - 0x81, 0x95, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
> 0x13, 0x02, 0x55, 0x53, 0x31,
> - 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x02, 0x55,
> 0x54, 0x31, 0x17, 0x30, 0x15,
> - 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x0e, 0x53, 0x61, 0x6c, 0x74,
> 0x20, 0x4c, 0x61, 0x6b, 0x65,
> - 0x20, 0x43, 0x69, 0x74, 0x79, 0x31, 0x1e, 0x30, 0x1c, 0x06, 0x03,
> 0x55, 0x04, 0x0a, 0x13, 0x15,
> - 0x54, 0x68, 0x65, 0x20, 0x55, 0x53, 0x45, 0x52, 0x54, 0x52, 0x55,
> 0x53, 0x54, 0x20, 0x4e, 0x65,
> - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03,
> 0x55, 0x04, 0x0b, 0x13, 0x18,
> - 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> - 0x72, 0x75, 0x73, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x31, 0x1d, 0x30,
> 0x1b, 0x06, 0x03, 0x55, 0x04,
> - 0x03, 0x13, 0x14, 0x55, 0x54, 0x4e, 0x2d, 0x55, 0x53, 0x45, 0x52,
> 0x46, 0x69, 0x72, 0x73, 0x74,
> - 0x2d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x30, 0x1e, 0x17, 0x0d,
> 0x31, 0x35, 0x30, 0x35, 0x30,
> - 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a, 0x17, 0x0d, 0x31,
> 0x35, 0x31, 0x32, 0x33, 0x31,
> - 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30, 0x7e, 0x31, 0x0b,
> 0x30, 0x09, 0x06, 0x03, 0x55,
> - 0x04, 0x06, 0x13, 0x02, 0x47, 0x42, 0x31, 0x1b, 0x30, 0x19, 0x06,
> 0x03, 0x55, 0x04, 0x08, 0x13,
> - 0x12, 0x47, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x4d, 0x61,
> 0x6e, 0x63, 0x68, 0x65, 0x73,
> - 0x74, 0x65, 0x72, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04,
> 0x07, 0x13, 0x07, 0x53, 0x61,
> - 0x6c, 0x66, 0x6f, 0x72, 0x64, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03,
> 0x55, 0x04, 0x0a, 0x13, 0x11,
> - 0x43, 0x4f, 0x4d, 0x4f, 0x44, 0x4f, 0x20, 0x43, 0x41, 0x20, 0x4c,
> 0x69, 0x6d, 0x69, 0x74, 0x65,
> - 0x64, 0x31, 0x24, 0x30, 0x22, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x1b, 0x43, 0x4f, 0x4d, 0x4f,
> - 0x44, 0x4f, 0x20, 0x54, 0x69, 0x6d, 0x65, 0x20, 0x53, 0x74, 0x61,
> 0x6d, 0x70, 0x69, 0x6e, 0x67,
> - 0x20, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x30, 0x82, 0x01, 0x22,
> 0x30, 0x0d, 0x06, 0x09, 0x2a,
> - 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03,
> 0x82, 0x01, 0x0f, 0x00, 0x30,
> - 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xbc, 0x35, 0xa0,
> 0x36, 0x70, 0x22, 0x81, 0x11,
> - 0xc3, 0xb2, 0x83, 0xb9, 0xd3, 0x28, 0xc6, 0x36, 0xcd, 0x25, 0x6b,
> 0xa9, 0x7b, 0xb2, 0x1c, 0xf6,
> - 0x9b, 0x51, 0x9c, 0xef, 0x35, 0xf4, 0xed, 0x08, 0x8e, 0x5e, 0x38,
> 0x08, 0xf8, 0x77, 0x3c, 0x0a,
> - 0x42, 0xe0, 0xf3, 0x70, 0xdc, 0xa3, 0xd7, 0xca, 0xf5, 0x4c, 0x0b,
> 0xcf, 0xff, 0x22, 0x9c, 0x0a,
> - 0x7e, 0x68, 0xd6, 0x09, 0xa2, 0x2a, 0x84, 0x7b, 0xa6, 0x9d, 0xb4,
> 0xa9, 0xc1, 0x33, 0xe2, 0xef,
> - 0x1f, 0x17, 0x48, 0xca, 0x3a, 0xcd, 0x46, 0xe6, 0xc5, 0xaa, 0x77,
> 0xbd, 0xe3, 0x77, 0x9a, 0xfa,
> - 0x47, 0x53, 0x40, 0x28, 0x59, 0x43, 0x93, 0xf1, 0xa4, 0x81, 0xea,
> 0xef, 0x80, 0xb5, 0x4f, 0xa7,
> - 0x08, 0xce, 0xba, 0x6e, 0xbc, 0xca, 0x76, 0x0c, 0x97, 0x64, 0x59,
> 0x86, 0x24, 0xbb, 0x3d, 0x82,
> - 0x90, 0xa8, 0x55, 0xb1, 0x92, 0xd3, 0xa0, 0xa7, 0x05, 0xac, 0x9f,
> 0x53, 0x25, 0x08, 0x10, 0x47,
> - 0x99, 0xcd, 0x98, 0xde, 0x68, 0xe5, 0xb4, 0x50, 0x78, 0xa3, 0xaf,
> 0x01, 0xcc, 0x59, 0x43, 0x58,
> - 0xe4, 0x76, 0x6e, 0x7e, 0xac, 0xc7, 0xe2, 0x9e, 0x1f, 0x4f, 0xb0,
> 0x47, 0x2d, 0xc8, 0x0c, 0xa3,
> - 0x49, 0x27, 0x80, 0x75, 0x8c, 0xbb, 0x06, 0x91, 0x65, 0x0f, 0x90,
> 0x9b, 0xf4, 0xba, 0xd1, 0x81,
> - 0xc8, 0x5c, 0x6a, 0xec, 0x14, 0xe9, 0x25, 0x09, 0xbf, 0x23, 0x16,
> 0xf4, 0x95, 0x46, 0x40, 0x40,
> - 0x21, 0xbb, 0x83, 0x96, 0xfd, 0x86, 0x1f, 0x7a, 0xc8, 0x0d, 0x10,
> 0x8e, 0xa2, 0xf8, 0x19, 0x07,
> - 0x58, 0x7f, 0x9f, 0xbd, 0x37, 0x02, 0x60, 0xf2, 0xa4, 0xe9, 0x9d,
> 0x44, 0x3f, 0x30, 0x05, 0xe4,
> - 0xa7, 0x70, 0x99, 0x51, 0x9a, 0xe8, 0x17, 0xf1, 0x55, 0xca, 0xb2,
> 0x61, 0x89, 0x65, 0x46, 0xa7,
> - 0x6a, 0xf2, 0x58, 0x46, 0x7e, 0xaa, 0xa0, 0x07, 0x02, 0x03, 0x01,
> 0x00, 0x01, 0xa3, 0x81, 0xf4,
> - 0x30, 0x81, 0xf1, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
> 0x18, 0x30, 0x16, 0x80, 0x14,
> - 0xda, 0xed, 0x64, 0x74, 0x14, 0x9c, 0x14, 0x3c, 0xab, 0xdd, 0x99,
> 0xa9, 0xbd, 0x5b, 0x28, 0x4d,
> - 0x8b, 0x3c, 0xc9, 0xd8, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
> 0x04, 0x16, 0x04, 0x14, 0x2e,
> - 0x2d, 0xb0, 0x0a, 0x44, 0x4a, 0xd3, 0x87, 0xc0, 0x02, 0x07, 0xce,
> 0x97, 0x7d, 0x50, 0x62, 0x20,
> - 0xfd, 0x0f, 0x83, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01,
> 0x01, 0xff, 0x04, 0x04, 0x03,
> - 0x02, 0x06, 0xc0, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01,
> 0x01, 0xff, 0x04, 0x02, 0x30,
> - 0x00, 0x30, 0x16, 0x06, 0x03, 0x55, 0x1d, 0x25, 0x01, 0x01, 0xff,
> 0x04, 0x0c, 0x30, 0x0a, 0x06,
> - 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x08, 0x30, 0x42,
> 0x06, 0x03, 0x55, 0x1d, 0x1f,
> - 0x04, 0x3b, 0x30, 0x39, 0x30, 0x37, 0xa0, 0x35, 0xa0, 0x33, 0x86,
> 0x31, 0x68, 0x74, 0x74, 0x70,
> - 0x3a, 0x2f, 0x2f, 0x63, 0x72, 0x6c, 0x2e, 0x75, 0x73, 0x65, 0x72,
> 0x74, 0x72, 0x75, 0x73, 0x74,
> - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x55, 0x54, 0x4e, 0x2d, 0x55, 0x53,
> 0x45, 0x52, 0x46, 0x69, 0x72,
> - 0x73, 0x74, 0x2d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x63,
> 0x72, 0x6c, 0x30, 0x35, 0x06,
> - 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x01, 0x01, 0x04, 0x29,
> 0x30, 0x27, 0x30, 0x25, 0x06,
> - 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x01, 0x86, 0x19,
> 0x68, 0x74, 0x74, 0x70, 0x3a,
> - 0x2f, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2e, 0x75, 0x73, 0x65, 0x72,
> 0x74, 0x72, 0x75, 0x73, 0x74,
> - 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48,
> 0x86, 0xf7, 0x0d, 0x01, 0x01,
> - 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x0d, 0xbb, 0xad,
> 0x60, 0x11, 0x1b, 0xb5, 0xf0,
> - 0x0d, 0xcc, 0xe6, 0x48, 0x3a, 0x7a, 0x3e, 0x0e, 0x33, 0xdc, 0x1c,
> 0xb9, 0xea, 0xd6, 0x20, 0xfe,
> - 0xa3, 0x4d, 0xd0, 0xcc, 0x76, 0x4e, 0xe8, 0x18, 0xd8, 0x79, 0xdf,
> 0xd3, 0x4f, 0x9a, 0x42, 0x64,
> - 0x23, 0x8a, 0x29, 0x72, 0x8a, 0x3a, 0x6c, 0x66, 0xa6, 0x3c, 0x3a,
> 0x17, 0xa8, 0x70, 0x45, 0x65,
> - 0xc6, 0x73, 0xc3, 0xd0, 0xce, 0x89, 0x54, 0xfb, 0xac, 0x69, 0x0f,
> 0x58, 0xb0, 0x19, 0xcb, 0x86,
> - 0x9f, 0x7e, 0xb9, 0x7e, 0xeb, 0x51, 0x92, 0xbf, 0x9b, 0xdd, 0xeb,
> 0xd1, 0x65, 0xf0, 0x25, 0x7b,
> - 0x88, 0x7c, 0xde, 0xbd, 0xa5, 0xc8, 0xb5, 0x14, 0x51, 0xbc, 0xc0,
> 0x81, 0x30, 0x8a, 0x85, 0x38,
> - 0x7b, 0xe6, 0x79, 0xfe, 0x67, 0x55, 0x93, 0x87, 0xfe, 0x4f, 0xe8,
> 0x8d, 0x0e, 0xed, 0xf3, 0x72,
> - 0x92, 0xb5, 0xc2, 0x89, 0x80, 0x6d, 0xd1, 0x59, 0xe3, 0x1d, 0x0d,
> 0xea, 0xb1, 0x38, 0xee, 0x03,
> - 0x9d, 0x00, 0x19, 0xa5, 0xab, 0x21, 0x9b, 0x79, 0xc3, 0xcc, 0xc2,
> 0x3e, 0x68, 0x7e, 0xbd, 0xc9,
> - 0x4d, 0x69, 0x4d, 0xb4, 0x64, 0x51, 0xfb, 0xb2, 0x28, 0x74, 0xe2,
> 0x53, 0x89, 0xce, 0x9d, 0xfa,
> - 0xad, 0xe2, 0xdb, 0xce, 0xab, 0x7b, 0x7e, 0x06, 0x44, 0x74, 0xfd,
> 0x0a, 0xa3, 0xc9, 0xb7, 0xa7,
> - 0x30, 0xcd, 0x49, 0xd2, 0x92, 0x64, 0xf1, 0x22, 0xa6, 0xb8, 0x28,
> 0x45, 0x74, 0x79, 0xe9, 0xa7,
> - 0xce, 0x3b, 0x33, 0xf9, 0x83, 0x50, 0x94, 0x7d, 0x68, 0xc0, 0x1d,
> 0x49, 0xc7, 0x60, 0x78, 0x7a,
> - 0x3c, 0x64, 0x26, 0xd5, 0xbe, 0xfa, 0x0a, 0x6d, 0xe4, 0x1e, 0xe1,
> 0x09, 0x53, 0x8f, 0xa9, 0xc5,
> - 0x23, 0xac, 0xc7, 0x9d, 0x61, 0x42, 0x21, 0xf0, 0x2c, 0x16, 0x71,
> 0x49, 0x3b, 0x10, 0xaf, 0x2c,
> - 0x6f, 0x1a, 0xe6, 0x31, 0xf1, 0x14, 0xfd, 0x6c
> - };
> -
> -//
> -//TBSCert in TestSub Certificate
> -//
> -UINT8 TBSCert[479] = {
> - 0x30, 0x82, 0x01, 0xdb, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x10,
> 0xf9, 0xcd, 0x3a, 0x06, 0x4d,
> - 0x83, 0x34, 0xab, 0x4a, 0x5c, 0xf2, 0x7d, 0xc8, 0x72, 0xd6, 0x28,
> 0x30, 0x09, 0x06, 0x05, 0x2b,
> - 0x0e, 0x03, 0x02, 0x1d, 0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30,
> 0x0f, 0x06, 0x03, 0x55, 0x04,
> - 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6f, 0x6f, 0x74,
> 0x30, 0x1e, 0x17, 0x0d, 0x31,
> - 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36, 0x35, 0x32, 0x35, 0x32,
> 0x5a, 0x17, 0x0d, 0x33, 0x39,
> - 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a,
> 0x30, 0x12, 0x31, 0x10, 0x30,
> - 0x0e, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x07, 0x54, 0x65, 0x73,
> 0x74, 0x53, 0x75, 0x62, 0x30,
> - 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
> 0xf7, 0x0d, 0x01, 0x01, 0x01,
> - 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a,
> 0x02, 0x82, 0x01, 0x01, 0x00,
> - 0xb1, 0x6d, 0x01, 0x2e, 0xc2, 0xea, 0x72, 0x83, 0xda, 0x47, 0xcf,
> 0xc2, 0xb9, 0x03, 0xc5, 0x2d,
> - 0x1e, 0x06, 0xa1, 0x36, 0xd2, 0x81, 0x7b, 0x51, 0xaa, 0x10, 0xdd,
> 0x74, 0xcb, 0x57, 0x41, 0x1f,
> - 0xfe, 0x5a, 0x9c, 0xa1, 0x81, 0x0a, 0xdf, 0x0a, 0x54, 0x38, 0xa2,
> 0xa5, 0x35, 0xaf, 0xb3, 0xd0,
> - 0x43, 0xc1, 0x11, 0xbb, 0xfd, 0x82, 0x4a, 0x64, 0xbf, 0x35, 0xe4,
> 0xc5, 0x95, 0x1a, 0x2b, 0x6d,
> - 0x3d, 0xa7, 0x06, 0x26, 0xbf, 0xba, 0x3a, 0x92, 0x39, 0xc2, 0xb5,
> 0x24, 0xa2, 0xe7, 0x91, 0x91,
> - 0xd6, 0x83, 0x15, 0x4a, 0x45, 0x6a, 0x90, 0x43, 0xd5, 0x4e, 0x18,
> 0xd2, 0xce, 0xa7, 0xca, 0x0b,
> - 0x0a, 0x1e, 0x80, 0xe2, 0x97, 0xb3, 0x62, 0xc3, 0xac, 0x36, 0x5a,
> 0x10, 0x78, 0xb9, 0x87, 0xba,
> - 0xfb, 0x36, 0xe3, 0xc2, 0x39, 0x66, 0x68, 0x1c, 0x31, 0xd4, 0x32,
> 0xe3, 0x4f, 0x62, 0x3a, 0x32,
> - 0x4b, 0xc6, 0xf4, 0x56, 0xcd, 0xc1, 0xdf, 0x76, 0x52, 0x43, 0x4f,
> 0xb4, 0x2e, 0x29, 0x06, 0x0a,
> - 0x28, 0xb9, 0x03, 0xdd, 0x65, 0x81, 0x1a, 0x7a, 0x47, 0x2f, 0x86,
> 0xab, 0x37, 0xd9, 0xe3, 0x83,
> - 0x6c, 0xe0, 0x7d, 0x74, 0x26, 0x16, 0x8f, 0xcc, 0x2c, 0x12, 0xbb,
> 0x06, 0xd5, 0x7e, 0x3b, 0x5a,
> - 0xe7, 0x22, 0x1b, 0x41, 0xb3, 0x9f, 0xa4, 0x8c, 0x09, 0xc6, 0x8b,
> 0x4c, 0x60, 0xf1, 0x9d, 0xde,
> - 0x94, 0x05, 0x19, 0xc4, 0xe3, 0x10, 0x31, 0x02, 0xe0, 0xef, 0x4b,
> 0x7b, 0x76, 0xbf, 0xb2, 0xc3,
> - 0xc8, 0x13, 0x67, 0xef, 0x15, 0xf5, 0xab, 0x17, 0xf9, 0x8b, 0x99,
> 0x09, 0xec, 0x17, 0xc7, 0x94,
> - 0xdb, 0x3e, 0xae, 0x88, 0x49, 0x4b, 0xbc, 0x28, 0x02, 0x57, 0xf6,
> 0xed, 0xf7, 0xde, 0x1f, 0xea,
> - 0x67, 0x86, 0xca, 0x40, 0x61, 0x0f, 0x2c, 0xba, 0xcd, 0xc0, 0x55,
> 0x5e, 0xdc, 0xf8, 0xcd, 0x53,
> - 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x48, 0x30, 0x46, 0x30, 0x44,
> 0x06, 0x03, 0x55, 0x1d, 0x01,
> - 0x04, 0x3d, 0x30, 0x3b, 0x80, 0x10, 0x84, 0xb5, 0x25, 0xa3, 0xd7,
> 0x99, 0x43, 0xe5, 0x71, 0xd3,
> - 0x1d, 0xee, 0x15, 0x25, 0x0c, 0x6a, 0xa1, 0x15, 0x30, 0x13, 0x31,
> 0x11, 0x30, 0x0f, 0x06, 0x03,
> - 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6f,
> 0x6f, 0x74, 0x82, 0x10, 0x6f,
> - 0xc8, 0x9c, 0x84, 0x28, 0x03, 0x85, 0x9b, 0x49, 0xa7, 0xd3, 0x63,
> 0x4f, 0xcc, 0x11, 0xf4
> -};
> -
> -//
> -// The SHA256 Digest Value of Sample TBSCert in TestSub Certificate
> -//
> -UINT8 TestSubHash[32] = {
> - 0x04, 0xe7, 0x67, 0x7d, 0x45, 0x8b, 0x1a, 0x61, 0x3f, 0x9a, 0x27,
> 0xd0, 0x48, 0x92, 0xb4, 0xd5,
> - 0xe9, 0x1e, 0xee, 0xf4, 0xed, 0x71, 0x1d, 0x30, 0x2d, 0x2e, 0x20,
> 0x2c, 0x34, 0x46, 0x5d, 0xaa
> -};
> \ No newline at end of file
> +/** @file
> +
> + Copyright 2016 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> +Module Name:
> +
> + Pkcs7BBTestData.c
> +
> +Abstract:
> +
> + Pre Data for EFI Driver Pkcs7 Verify Protocol's Test
> +
> +--*/
> +
> +//
> +// Sample Test Data for P7 Signing & Verification.
> +// "Hello World!
> +// Test for PKCS7 Blob Data Signing & Verification."
> +//
> +UINT8 TestBin[64] = {
> + 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64,
> 0x21, 0x0d, 0x0a, 0x54, 0x65,
> + 0x73, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x50, 0x4b, 0x43, 0x53,
> 0x37, 0x20, 0x42, 0x6c, 0x6f,
> + 0x62, 0x20, 0x44, 0x61, 0x74, 0x61, 0x20, 0x53, 0x69, 0x67, 0x6e,
> 0x69, 0x6e, 0x67, 0x20, 0x26,
> + 0x20, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
> 0x6f, 0x6e, 0x2e, 0x0d, 0x0a
> +};
> +
> +//
> +// The SHA256 Digest Value of Sample Test Data
> +//
> +UINT8 TestBinHash[32] = {
> + 0x45, 0xce, 0x79, 0x80, 0xef, 0x43, 0x8f, 0x63, 0xd0, 0x75, 0x23,
> 0x48, 0x38, 0x2f, 0xd8, 0x48,
> + 0x21, 0x5d, 0xcc, 0x37, 0x68, 0x97, 0x0f, 0xb4, 0x7c, 0xc1, 0xff,
> 0x91, 0xb2, 0x04, 0xf7, 0x0e
> +};
> +
> +UINT8 TestSubCert[755] = {
> + 0x30, 0x82, 0x02, 0xEF, 0x30, 0x82, 0x01, 0xDB, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0xF9,
> + 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2, 0x7D,
> 0xC8, 0x72, 0xD6, 0x28, 0x30,
> + 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> + 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> + 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x32, 0x35, 0x32, 0x5A,
> + 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> + 0x12, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x07, 0x54, 0x65, 0x73, 0x74,
> + 0x53, 0x75, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09,
> 0x2A, 0x86, 0x48, 0x86, 0xF7,
> + 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00,
> 0x30, 0x82, 0x01, 0x0A, 0x02,
> + 0x82, 0x01, 0x01, 0x00, 0xB1, 0x6D, 0x01, 0x2E, 0xC2, 0xEA, 0x72,
> 0x83, 0xDA, 0x47, 0xCF, 0xC2,
> + 0xB9, 0x03, 0xC5, 0x2D, 0x1E, 0x06, 0xA1, 0x36, 0xD2, 0x81, 0x7B,
> 0x51, 0xAA, 0x10, 0xDD, 0x74,
> + 0xCB, 0x57, 0x41, 0x1F, 0xFE, 0x5A, 0x9C, 0xA1, 0x81, 0x0A, 0xDF,
> 0x0A, 0x54, 0x38, 0xA2, 0xA5,
> + 0x35, 0xAF, 0xB3, 0xD0, 0x43, 0xC1, 0x11, 0xBB, 0xFD, 0x82, 0x4A,
> 0x64, 0xBF, 0x35, 0xE4, 0xC5,
> + 0x95, 0x1A, 0x2B, 0x6D, 0x3D, 0xA7, 0x06, 0x26, 0xBF, 0xBA, 0x3A,
> 0x92, 0x39, 0xC2, 0xB5, 0x24,
> + 0xA2, 0xE7, 0x91, 0x91, 0xD6, 0x83, 0x15, 0x4A, 0x45, 0x6A, 0x90,
> 0x43, 0xD5, 0x4E, 0x18, 0xD2,
> + 0xCE, 0xA7, 0xCA, 0x0B, 0x0A, 0x1E, 0x80, 0xE2, 0x97, 0xB3, 0x62,
> 0xC3, 0xAC, 0x36, 0x5A, 0x10,
> + 0x78, 0xB9, 0x87, 0xBA, 0xFB, 0x36, 0xE3, 0xC2, 0x39, 0x66, 0x68,
> 0x1C, 0x31, 0xD4, 0x32, 0xE3,
> + 0x4F, 0x62, 0x3A, 0x32, 0x4B, 0xC6, 0xF4, 0x56, 0xCD, 0xC1, 0xDF,
> 0x76, 0x52, 0x43, 0x4F, 0xB4,
> + 0x2E, 0x29, 0x06, 0x0A, 0x28, 0xB9, 0x03, 0xDD, 0x65, 0x81, 0x1A,
> 0x7A, 0x47, 0x2F, 0x86, 0xAB,
> + 0x37, 0xD9, 0xE3, 0x83, 0x6C, 0xE0, 0x7D, 0x74, 0x26, 0x16, 0x8F,
> 0xCC, 0x2C, 0x12, 0xBB, 0x06,
> + 0xD5, 0x7E, 0x3B, 0x5A, 0xE7, 0x22, 0x1B, 0x41, 0xB3, 0x9F, 0xA4,
> 0x8C, 0x09, 0xC6, 0x8B, 0x4C,
> + 0x60, 0xF1, 0x9D, 0xDE, 0x94, 0x05, 0x19, 0xC4, 0xE3, 0x10, 0x31,
> 0x02, 0xE0, 0xEF, 0x4B, 0x7B,
> + 0x76, 0xBF, 0xB2, 0xC3, 0xC8, 0x13, 0x67, 0xEF, 0x15, 0xF5, 0xAB,
> 0x17, 0xF9, 0x8B, 0x99, 0x09,
> + 0xEC, 0x17, 0xC7, 0x94, 0xDB, 0x3E, 0xAE, 0x88, 0x49, 0x4B, 0xBC,
> 0x28, 0x02, 0x57, 0xF6, 0xED,
> + 0xF7, 0xDE, 0x1F, 0xEA, 0x67, 0x86, 0xCA, 0x40, 0x61, 0x0F, 0x2C,
> 0xBA, 0xCD, 0xC0, 0x55, 0x5E,
> + 0xDC, 0xF8, 0xCD, 0x53, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x48,
> 0x30, 0x46, 0x30, 0x44, 0x06,
> + 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10, 0x84,
> 0xB5, 0x25, 0xA3, 0xD7, 0x99,
> + 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A, 0xA1,
> 0x15, 0x30, 0x13, 0x31, 0x11,
> + 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65,
> 0x73, 0x74, 0x52, 0x6F, 0x6F,
> + 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B,
> 0x49, 0xA7, 0xD3, 0x63, 0x4F,
> + 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02,
> 0x1D, 0x05, 0x00, 0x03, 0x82,
> + 0x01, 0x01, 0x00, 0x10, 0x5F, 0xC3, 0xCD, 0x68, 0x05, 0x16, 0x26,
> 0x94, 0xBE, 0xEC, 0x30, 0x4A,
> + 0x78, 0x58, 0x7A, 0xC8, 0xAC, 0x9E, 0xDF, 0xF3, 0x8A, 0x31, 0x33,
> 0x92, 0x24, 0x18, 0xF5, 0x88,
> + 0x1E, 0xBC, 0xFA, 0xA0, 0xC2, 0x14, 0x74, 0xE1, 0x7B, 0x98, 0x84,
> 0x8B, 0xF5, 0x27, 0x2C, 0x70,
> + 0x99, 0x8E, 0x98, 0x11, 0x01, 0xF7, 0xC9, 0x52, 0xD2, 0x1B, 0x36,
> 0xC9, 0x9F, 0xC5, 0x80, 0x7C,
> + 0xCF, 0xD8, 0xC1, 0xC9, 0x40, 0xF9, 0x91, 0x27, 0xD0, 0x90, 0x3D,
> 0x1A, 0xDB, 0x60, 0x58, 0x66,
> + 0x4D, 0xD7, 0xA4, 0x98, 0x37, 0x21, 0x93, 0xB7, 0x87, 0xD3, 0x71,
> 0x6B, 0x36, 0xA2, 0x40, 0xFC,
> + 0x19, 0x51, 0x80, 0x1D, 0xD6, 0xEF, 0x9E, 0x5B, 0xD9, 0x7B, 0x02,
> 0x04, 0xE4, 0x53, 0x40, 0x5F,
> + 0x3E, 0xE2, 0x4D, 0xEB, 0x19, 0x9E, 0xAF, 0xC5, 0x5B, 0x8E, 0x4F,
> 0x6B, 0x7B, 0xC8, 0xB4, 0xC9,
> + 0x35, 0xA3, 0x8B, 0xB4, 0x7B, 0x97, 0x08, 0x49, 0x3E, 0x9B, 0x20,
> 0x49, 0x81, 0x1C, 0x85, 0xE5,
> + 0xEF, 0x58, 0x46, 0x4F, 0x63, 0xF7, 0x49, 0x3A, 0x1B, 0x83, 0xCD,
> 0x7C, 0x9B, 0xC2, 0xF8, 0xC2,
> + 0x5D, 0x62, 0xD2, 0x4D, 0x18, 0xAD, 0x87, 0x77, 0x54, 0x6F, 0x8C,
> 0x6A, 0x31, 0x64, 0x2E, 0xFD,
> + 0x29, 0x8F, 0xDF, 0xC8, 0xC7, 0x35, 0x91, 0xE4, 0x76, 0xA1, 0x0E,
> 0x03, 0x8F, 0xC1, 0xBF, 0x35,
> + 0x4B, 0x2A, 0xF1, 0x7F, 0x8B, 0x0F, 0xC3, 0x9D, 0x5D, 0x41, 0x40,
> 0x8A, 0x05, 0xEB, 0x53, 0xE6,
> + 0xF4, 0x03, 0x33, 0x07, 0xAB, 0x21, 0x51, 0x50, 0x37, 0xB5, 0x65,
> 0x43, 0x4D, 0x25, 0x8B, 0xB0,
> + 0x77, 0x47, 0xA3, 0xC7, 0x1C, 0xC7, 0xE7, 0xB4, 0x8B, 0x4D, 0x9E,
> 0x5B, 0x77, 0xE3, 0x36, 0x69,
> + 0xB4, 0x8F, 0x0D, 0x6C, 0xD0, 0xC5, 0x9D, 0x8D, 0xD2, 0x49, 0xED,
> 0x5B, 0x21, 0x61, 0xF6, 0x2C,
> + 0x74, 0x84, 0xA1
> +};
> +
> +UINT8 TestRootCert[756] = {
> + 0x30, 0x82, 0x02, 0xF0, 0x30, 0x82, 0x01, 0xDC, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0x6F,
> + 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B, 0x49, 0xA7, 0xD3, 0x63,
> 0x4F, 0xCC, 0x11, 0xF4, 0x30,
> + 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> + 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> + 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x30, 0x31, 0x33, 0x5A,
> + 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> + 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x08, 0x54, 0x65, 0x73, 0x74,
> + 0x52, 0x6F, 0x6F, 0x74, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> + 0xF7, 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F,
> 0x00, 0x30, 0x82, 0x01, 0x0A,
> + 0x02, 0x82, 0x01, 0x01, 0x00, 0xD0, 0xCC, 0xC7, 0x8F, 0x69, 0xAB,
> 0x7C, 0xEE, 0xF4, 0xEC, 0xEE,
> + 0x82, 0x8A, 0xD3, 0xE0, 0x14, 0x19, 0x1F, 0xB8, 0xCC, 0xA8, 0x65,
> 0xF3, 0xF8, 0x93, 0xF6, 0xBA,
> + 0x23, 0x11, 0xA5, 0xDC, 0xD4, 0xBC, 0xB6, 0xAD, 0x6E, 0x06, 0xCC,
> 0x19, 0x1A, 0xCE, 0x16, 0xFA,
> + 0x0A, 0x36, 0x39, 0x2F, 0x90, 0x89, 0x90, 0xBB, 0x0A, 0xC3, 0xAF,
> 0x6E, 0x69, 0x6C, 0x0B, 0xB8,
> + 0xD2, 0xD6, 0xB9, 0xC0, 0x23, 0xD7, 0x3C, 0x15, 0xFC, 0x24, 0x06,
> 0x9D, 0xED, 0x60, 0xEF, 0x29,
> + 0xA3, 0x3B, 0xBA, 0x02, 0xC3, 0x5F, 0xA4, 0x36, 0xC6, 0xBF, 0x8B,
> 0x8F, 0x32, 0x95, 0xE0, 0x5C,
> + 0x80, 0xF5, 0x0E, 0x78, 0x45, 0xF5, 0xE1, 0x51, 0x19, 0x97, 0x1B,
> 0xDE, 0xD4, 0xBB, 0xF2, 0x9B,
> + 0xFF, 0x01, 0xE3, 0x4B, 0x9C, 0xEF, 0x7E, 0x3F, 0x1C, 0x97, 0x82,
> 0x21, 0x9A, 0xCA, 0x90, 0x36,
> + 0x7F, 0x83, 0xEA, 0x03, 0x1B, 0x79, 0x0B, 0x2F, 0xD7, 0xB3, 0x35,
> 0x79, 0x36, 0xD3, 0xE5, 0x40,
> + 0x9C, 0x52, 0xB0, 0x36, 0x52, 0x0E, 0x8A, 0x9D, 0xA9, 0x02, 0xE0,
> 0x8C, 0xF1, 0x02, 0x12, 0x70,
> + 0x29, 0x2C, 0xAE, 0x3E, 0x9C, 0x7F, 0x3A, 0xB7, 0x2D, 0x4B, 0xB9,
> 0x51, 0x68, 0x35, 0xCA, 0xBC,
> + 0xCC, 0x50, 0x46, 0xCE, 0xB9, 0x2C, 0x4F, 0xBE, 0x27, 0x0E, 0xD5,
> 0x8F, 0x31, 0x40, 0x61, 0xCC,
> + 0xE5, 0x7F, 0x89, 0x8B, 0xC7, 0x15, 0x13, 0xDA, 0x1A, 0x5A, 0xD0,
> 0xFE, 0xCE, 0x47, 0x10, 0xCC,
> + 0xBC, 0xE4, 0xDB, 0x34, 0x23, 0x0F, 0xFE, 0xE4, 0x23, 0xE7, 0x30,
> 0x70, 0xE2, 0xE4, 0xFC, 0x8F,
> + 0xBA, 0xD9, 0x49, 0xD0, 0xA0, 0xAB, 0x4D, 0x69, 0xA2, 0xE4, 0xBB,
> 0x2A, 0x53, 0x74, 0x08, 0xE5,
> + 0x98, 0x32, 0x24, 0x92, 0xE3, 0x27, 0x28, 0x93, 0xC0, 0xB0, 0xE6,
> 0x0F, 0xFA, 0x05, 0xEA, 0xCA,
> + 0x1D, 0x4F, 0x45, 0x67, 0xC9, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3,
> 0x48, 0x30, 0x46, 0x30, 0x44,
> + 0x06, 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10,
> 0x84, 0xB5, 0x25, 0xA3, 0xD7,
> + 0x99, 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A,
> 0xA1, 0x15, 0x30, 0x13, 0x31,
> + 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54,
> 0x65, 0x73, 0x74, 0x52, 0x6F,
> + 0x6F, 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85,
> 0x9B, 0x49, 0xA7, 0xD3, 0x63,
> + 0x4F, 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03,
> 0x02, 0x1D, 0x05, 0x00, 0x03,
> + 0x82, 0x01, 0x01, 0x00, 0x07, 0x71, 0x55, 0x58, 0x31, 0xF5, 0x2D,
> 0xDA, 0x85, 0xDA, 0xF2, 0x62,
> + 0x2D, 0xC2, 0xD3, 0xD9, 0x86, 0x43, 0x50, 0xE8, 0xC5, 0x51, 0x6C,
> 0xA2, 0x6D, 0x5A, 0xFB, 0x10,
> + 0x57, 0xFA, 0x63, 0x8E, 0x58, 0xA2, 0x07, 0xFC, 0xB7, 0xA1, 0x5C,
> 0x6E, 0xF7, 0x6B, 0xD0, 0x11,
> + 0x4A, 0xCB, 0xF4, 0xC1, 0xA4, 0xDE, 0x43, 0x2D, 0x1A, 0xEF, 0xD8,
> 0x71, 0x44, 0xA3, 0xEA, 0xBF,
> + 0x1F, 0xFE, 0x20, 0xA3, 0x97, 0xEF, 0x30, 0xF9, 0x9F, 0x7C, 0xC5,
> 0x75, 0xF9, 0xDC, 0x29, 0xEC,
> + 0x72, 0xED, 0xD3, 0x58, 0xD2, 0x3C, 0xA3, 0x95, 0x64, 0xC9, 0xD4,
> 0xE0, 0xD8, 0xAF, 0xC2, 0x2E,
> + 0x21, 0x02, 0xE1, 0xFC, 0x29, 0xB0, 0x63, 0x9B, 0x46, 0x2C, 0xB4,
> 0x6C, 0x59, 0x7E, 0x51, 0xA8,
> + 0x0F, 0x33, 0x92, 0x94, 0x60, 0x99, 0x4D, 0x31, 0x9D, 0xA3, 0x4E,
> 0x23, 0x11, 0xAD, 0xD9, 0xC4,
> + 0x03, 0xB9, 0x3D, 0x0C, 0x9F, 0x37, 0x94, 0x6F, 0xC7, 0x3E, 0xCE,
> 0xCF, 0x49, 0x09, 0x64, 0x19,
> + 0xF6, 0x8F, 0xE2, 0xE5, 0xCA, 0x0A, 0x3C, 0x90, 0x41, 0xD2, 0xA4,
> 0x37, 0xEB, 0x47, 0xEC, 0x54,
> + 0x5A, 0xD0, 0xFD, 0xE4, 0x36, 0x5C, 0x8A, 0xB4, 0x8A, 0x94, 0xF9,
> 0x58, 0x07, 0xF5, 0xC8, 0x33,
> + 0x76, 0x62, 0xD2, 0xD5, 0x84, 0xCF, 0x85, 0xF9, 0x0C, 0x8F, 0xF6,
> 0xF7, 0xEC, 0xE8, 0xA8, 0xA3,
> + 0x17, 0x7C, 0xC1, 0x5D, 0x06, 0x19, 0x41, 0x06, 0xC6, 0x58, 0x54,
> 0xE0, 0x1B, 0x3B, 0x72, 0xA2,
> + 0x64, 0x89, 0xF5, 0x5E, 0x7C, 0x05, 0x2F, 0xE5, 0x2D, 0x98, 0x27,
> 0x61, 0x97, 0x41, 0x2C, 0x20,
> + 0x59, 0x81, 0x0C, 0x9D, 0xC1, 0x0F, 0xD9, 0x06, 0x75, 0x3D, 0x32,
> 0xFA, 0x0F, 0xBF, 0x74, 0xF4,
> + 0xE2, 0x9C, 0x7E, 0xDD, 0x67, 0x9F, 0x1B, 0x61, 0x89, 0xAB, 0xD6,
> 0x85, 0x87, 0x1F, 0xC9, 0xBF,
> + 0x07, 0x60, 0xF3, 0x33
> +};
> +
> +//
> +// Embedded PKCS7 signedData (by signing TestBin with TestSub
> Certificate, and Timestamped)
> +//
> +UINT8 P7Embedded[3330] = {
> + 0x30, 0x82, 0x0C, 0xFE, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7,
> 0x0D, 0x01, 0x07, 0x02, 0xA0,
> + 0x82, 0x0C, 0xEF, 0x30, 0x82, 0x0C, 0xEB, 0x02, 0x01, 0x01, 0x31,
> 0x0F, 0x30, 0x0D, 0x06, 0x09,
> + 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, 0x00,
> 0x30, 0x4F, 0x06, 0x09, 0x2A,
> + 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x07, 0x01, 0xA0, 0x42, 0x04,
> 0x40, 0x48, 0x65, 0x6C, 0x6C,
> + 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64, 0x21, 0x0D, 0x0A, 0x54,
> 0x65, 0x73, 0x74, 0x20, 0x66,
> + 0x6F, 0x72, 0x20, 0x50, 0x4B, 0x43, 0x53, 0x37, 0x20, 0x42, 0x6C,
> 0x6F, 0x62, 0x20, 0x44, 0x61,
> + 0x74, 0x61, 0x20, 0x53, 0x69, 0x67, 0x6E, 0x69, 0x6E, 0x67, 0x20,
> 0x26, 0x20, 0x56, 0x65, 0x72,
> + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2E, 0x0D,
> 0x0A, 0xA0, 0x82, 0x02, 0xF3,
> + 0x30, 0x82, 0x02, 0xEF, 0x30, 0x82, 0x01, 0xDB, 0xA0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x10, 0xF9,
> + 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2, 0x7D,
> 0xC8, 0x72, 0xD6, 0x28, 0x30,
> + 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x30,
> 0x13, 0x31, 0x11, 0x30, 0x0F,
> + 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74,
> 0x52, 0x6F, 0x6F, 0x74, 0x30,
> + 0x1E, 0x17, 0x0D, 0x31, 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36,
> 0x35, 0x32, 0x35, 0x32, 0x5A,
> + 0x17, 0x0D, 0x33, 0x39, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35,
> 0x39, 0x35, 0x39, 0x5A, 0x30,
> + 0x12, 0x31, 0x10, 0x30, 0x0E, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x07, 0x54, 0x65, 0x73, 0x74,
> + 0x53, 0x75, 0x62, 0x30, 0x82, 0x01, 0x22, 0x30, 0x0D, 0x06, 0x09,
> 0x2A, 0x86, 0x48, 0x86, 0xF7,
> + 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0F, 0x00,
> 0x30, 0x82, 0x01, 0x0A, 0x02,
> + 0x82, 0x01, 0x01, 0x00, 0xB1, 0x6D, 0x01, 0x2E, 0xC2, 0xEA, 0x72,
> 0x83, 0xDA, 0x47, 0xCF, 0xC2,
> + 0xB9, 0x03, 0xC5, 0x2D, 0x1E, 0x06, 0xA1, 0x36, 0xD2, 0x81, 0x7B,
> 0x51, 0xAA, 0x10, 0xDD, 0x74,
> + 0xCB, 0x57, 0x41, 0x1F, 0xFE, 0x5A, 0x9C, 0xA1, 0x81, 0x0A, 0xDF,
> 0x0A, 0x54, 0x38, 0xA2, 0xA5,
> + 0x35, 0xAF, 0xB3, 0xD0, 0x43, 0xC1, 0x11, 0xBB, 0xFD, 0x82, 0x4A,
> 0x64, 0xBF, 0x35, 0xE4, 0xC5,
> + 0x95, 0x1A, 0x2B, 0x6D, 0x3D, 0xA7, 0x06, 0x26, 0xBF, 0xBA, 0x3A,
> 0x92, 0x39, 0xC2, 0xB5, 0x24,
> + 0xA2, 0xE7, 0x91, 0x91, 0xD6, 0x83, 0x15, 0x4A, 0x45, 0x6A, 0x90,
> 0x43, 0xD5, 0x4E, 0x18, 0xD2,
> + 0xCE, 0xA7, 0xCA, 0x0B, 0x0A, 0x1E, 0x80, 0xE2, 0x97, 0xB3, 0x62,
> 0xC3, 0xAC, 0x36, 0x5A, 0x10,
> + 0x78, 0xB9, 0x87, 0xBA, 0xFB, 0x36, 0xE3, 0xC2, 0x39, 0x66, 0x68,
> 0x1C, 0x31, 0xD4, 0x32, 0xE3,
> + 0x4F, 0x62, 0x3A, 0x32, 0x4B, 0xC6, 0xF4, 0x56, 0xCD, 0xC1, 0xDF,
> 0x76, 0x52, 0x43, 0x4F, 0xB4,
> + 0x2E, 0x29, 0x06, 0x0A, 0x28, 0xB9, 0x03, 0xDD, 0x65, 0x81, 0x1A,
> 0x7A, 0x47, 0x2F, 0x86, 0xAB,
> + 0x37, 0xD9, 0xE3, 0x83, 0x6C, 0xE0, 0x7D, 0x74, 0x26, 0x16, 0x8F,
> 0xCC, 0x2C, 0x12, 0xBB, 0x06,
> + 0xD5, 0x7E, 0x3B, 0x5A, 0xE7, 0x22, 0x1B, 0x41, 0xB3, 0x9F, 0xA4,
> 0x8C, 0x09, 0xC6, 0x8B, 0x4C,
> + 0x60, 0xF1, 0x9D, 0xDE, 0x94, 0x05, 0x19, 0xC4, 0xE3, 0x10, 0x31,
> 0x02, 0xE0, 0xEF, 0x4B, 0x7B,
> + 0x76, 0xBF, 0xB2, 0xC3, 0xC8, 0x13, 0x67, 0xEF, 0x15, 0xF5, 0xAB,
> 0x17, 0xF9, 0x8B, 0x99, 0x09,
> + 0xEC, 0x17, 0xC7, 0x94, 0xDB, 0x3E, 0xAE, 0x88, 0x49, 0x4B, 0xBC,
> 0x28, 0x02, 0x57, 0xF6, 0xED,
> + 0xF7, 0xDE, 0x1F, 0xEA, 0x67, 0x86, 0xCA, 0x40, 0x61, 0x0F, 0x2C,
> 0xBA, 0xCD, 0xC0, 0x55, 0x5E,
> + 0xDC, 0xF8, 0xCD, 0x53, 0x02, 0x03, 0x01, 0x00, 0x01, 0xA3, 0x48,
> 0x30, 0x46, 0x30, 0x44, 0x06,
> + 0x03, 0x55, 0x1D, 0x01, 0x04, 0x3D, 0x30, 0x3B, 0x80, 0x10, 0x84,
> 0xB5, 0x25, 0xA3, 0xD7, 0x99,
> + 0x43, 0xE5, 0x71, 0xD3, 0x1D, 0xEE, 0x15, 0x25, 0x0C, 0x6A, 0xA1,
> 0x15, 0x30, 0x13, 0x31, 0x11,
> + 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65,
> 0x73, 0x74, 0x52, 0x6F, 0x6F,
> + 0x74, 0x82, 0x10, 0x6F, 0xC8, 0x9C, 0x84, 0x28, 0x03, 0x85, 0x9B,
> 0x49, 0xA7, 0xD3, 0x63, 0x4F,
> + 0xCC, 0x11, 0xF4, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02,
> 0x1D, 0x05, 0x00, 0x03, 0x82,
> + 0x01, 0x01, 0x00, 0x10, 0x5F, 0xC3, 0xCD, 0x68, 0x05, 0x16, 0x26,
> 0x94, 0xBE, 0xEC, 0x30, 0x4A,
> + 0x78, 0x58, 0x7A, 0xC8, 0xAC, 0x9E, 0xDF, 0xF3, 0x8A, 0x31, 0x33,
> 0x92, 0x24, 0x18, 0xF5, 0x88,
> + 0x1E, 0xBC, 0xFA, 0xA0, 0xC2, 0x14, 0x74, 0xE1, 0x7B, 0x98, 0x84,
> 0x8B, 0xF5, 0x27, 0x2C, 0x70,
> + 0x99, 0x8E, 0x98, 0x11, 0x01, 0xF7, 0xC9, 0x52, 0xD2, 0x1B, 0x36,
> 0xC9, 0x9F, 0xC5, 0x80, 0x7C,
> + 0xCF, 0xD8, 0xC1, 0xC9, 0x40, 0xF9, 0x91, 0x27, 0xD0, 0x90, 0x3D,
> 0x1A, 0xDB, 0x60, 0x58, 0x66,
> + 0x4D, 0xD7, 0xA4, 0x98, 0x37, 0x21, 0x93, 0xB7, 0x87, 0xD3, 0x71,
> 0x6B, 0x36, 0xA2, 0x40, 0xFC,
> + 0x19, 0x51, 0x80, 0x1D, 0xD6, 0xEF, 0x9E, 0x5B, 0xD9, 0x7B, 0x02,
> 0x04, 0xE4, 0x53, 0x40, 0x5F,
> + 0x3E, 0xE2, 0x4D, 0xEB, 0x19, 0x9E, 0xAF, 0xC5, 0x5B, 0x8E, 0x4F,
> 0x6B, 0x7B, 0xC8, 0xB4, 0xC9,
> + 0x35, 0xA3, 0x8B, 0xB4, 0x7B, 0x97, 0x08, 0x49, 0x3E, 0x9B, 0x20,
> 0x49, 0x81, 0x1C, 0x85, 0xE5,
> + 0xEF, 0x58, 0x46, 0x4F, 0x63, 0xF7, 0x49, 0x3A, 0x1B, 0x83, 0xCD,
> 0x7C, 0x9B, 0xC2, 0xF8, 0xC2,
> + 0x5D, 0x62, 0xD2, 0x4D, 0x18, 0xAD, 0x87, 0x77, 0x54, 0x6F, 0x8C,
> 0x6A, 0x31, 0x64, 0x2E, 0xFD,
> + 0x29, 0x8F, 0xDF, 0xC8, 0xC7, 0x35, 0x91, 0xE4, 0x76, 0xA1, 0x0E,
> 0x03, 0x8F, 0xC1, 0xBF, 0x35,
> + 0x4B, 0x2A, 0xF1, 0x7F, 0x8B, 0x0F, 0xC3, 0x9D, 0x5D, 0x41, 0x40,
> 0x8A, 0x05, 0xEB, 0x53, 0xE6,
> + 0xF4, 0x03, 0x33, 0x07, 0xAB, 0x21, 0x51, 0x50, 0x37, 0xB5, 0x65,
> 0x43, 0x4D, 0x25, 0x8B, 0xB0,
> + 0x77, 0x47, 0xA3, 0xC7, 0x1C, 0xC7, 0xE7, 0xB4, 0x8B, 0x4D, 0x9E,
> 0x5B, 0x77, 0xE3, 0x36, 0x69,
> + 0xB4, 0x8F, 0x0D, 0x6C, 0xD0, 0xC5, 0x9D, 0x8D, 0xD2, 0x49, 0xED,
> 0x5B, 0x21, 0x61, 0xF6, 0x2C,
> + 0x74, 0x84, 0xA1, 0x31, 0x82, 0x09, 0x8B, 0x30, 0x82, 0x09, 0x87,
> 0x02, 0x01, 0x01, 0x30, 0x27,
> + 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03, 0x55, 0x04, 0x03,
> 0x13, 0x08, 0x54, 0x65, 0x73,
> + 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x02, 0x10, 0xF9, 0xCD, 0x3A, 0x06,
> 0x4D, 0x83, 0x34, 0xAB, 0x4A,
> + 0x5C, 0xF2, 0x7D, 0xC8, 0x72, 0xD6, 0x28, 0x30, 0x0D, 0x06, 0x09,
> 0x60, 0x86, 0x48, 0x01, 0x65,
> + 0x03, 0x04, 0x02, 0x01, 0x05, 0x00, 0x30, 0x0D, 0x06, 0x09, 0x2A,
> 0x86, 0x48, 0x86, 0xF7, 0x0D,
> + 0x01, 0x01, 0x01, 0x05, 0x00, 0x04, 0x82, 0x01, 0x00, 0x22, 0xB9,
> 0x4A, 0x53, 0xA4, 0x35, 0xF3,
> + 0xDA, 0xF3, 0xA9, 0x37, 0x12, 0xF7, 0x5B, 0x8F, 0xFA, 0x14, 0x57,
> 0x86, 0x59, 0xA6, 0x9A, 0xC2,
> + 0x7C, 0x1C, 0x79, 0xC3, 0xD2, 0xF8, 0x84, 0x6C, 0x4E, 0x14, 0x44,
> 0x6C, 0x56, 0x45, 0x3C, 0x38,
> + 0xC3, 0x6B, 0x12, 0x02, 0x97, 0xB7, 0x86, 0xA7, 0xAC, 0x2E, 0x46,
> 0xA8, 0xF9, 0xA9, 0x57, 0x13,
> + 0x28, 0xCE, 0x37, 0x57, 0x1C, 0xC9, 0xCD, 0x8E, 0xC4, 0xFE, 0x56,
> 0xC6, 0x97, 0x11, 0x2E, 0xFA,
> + 0xE0, 0x09, 0x91, 0xF7, 0x30, 0xF9, 0x45, 0x2C, 0x41, 0xAA, 0xAF,
> 0xFF, 0x3D, 0x55, 0xCB, 0x89,
> + 0x0A, 0xFE, 0xF6, 0x60, 0xD4, 0xDF, 0x64, 0xF6, 0x1C, 0xDD, 0x8C,
> 0x84, 0x2F, 0xB6, 0x67, 0x1D,
> + 0xD7, 0xE2, 0xB9, 0x9A, 0x04, 0x07, 0xF8, 0xDC, 0x5B, 0xA3, 0x12,
> 0x91, 0x08, 0x00, 0x85, 0x95,
> + 0xA1, 0x17, 0x8D, 0x93, 0x49, 0x6A, 0xAA, 0x4E, 0xE4, 0xF5, 0x4B,
> 0xDE, 0x22, 0x21, 0xE2, 0x57,
> + 0x62, 0x7D, 0x6E, 0xC1, 0x31, 0x38, 0x2C, 0x89, 0x93, 0x07, 0x42,
> 0x5B, 0xDB, 0x56, 0x71, 0x39,
> + 0x1F, 0xED, 0xCA, 0x43, 0x67, 0x88, 0xC9, 0x8E, 0x23, 0x0D, 0x68,
> 0x5B, 0x7E, 0x38, 0x52, 0x5C,
> + 0x96, 0xE7, 0x5F, 0x32, 0x2F, 0x5F, 0x37, 0x4E, 0x9E, 0x27, 0xA5,
> 0x79, 0xF9, 0x03, 0xAB, 0x3C,
> + 0xB5, 0x20, 0x1E, 0x01, 0x48, 0x9B, 0xB8, 0x11, 0x12, 0xB2, 0xCA,
> 0x8B, 0x69, 0x08, 0x5F, 0x78,
> + 0x80, 0x09, 0x14, 0xA0, 0x3D, 0x57, 0x2B, 0xBB, 0x75, 0x9A, 0xFF,
> 0x33, 0xA2, 0x2B, 0x1C, 0x3B,
> + 0xEE, 0xBF, 0xE5, 0x8B, 0x34, 0xDB, 0x54, 0x15, 0xE2, 0x5E, 0x13,
> 0x56, 0x02, 0x5D, 0xB9, 0x3D,
> + 0x5A, 0x47, 0x59, 0x5D, 0x86, 0xC1, 0x75, 0xED, 0x4E, 0x12, 0xD7,
> 0x69, 0x76, 0xB2, 0xED, 0xBA,
> + 0x65, 0xA2, 0x1A, 0xDB, 0x01, 0x81, 0x62, 0x7E, 0x07, 0xA1, 0x82,
> 0x08, 0x35, 0x30, 0x82, 0x08,
> + 0x31, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01, 0x82, 0x37, 0x03,
> 0x03, 0x01, 0x31, 0x82, 0x08,
> + 0x21, 0x30, 0x82, 0x08, 0x1D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86,
> 0xF7, 0x0D, 0x01, 0x07, 0x02,
> + 0xA0, 0x82, 0x08, 0x0E, 0x30, 0x82, 0x08, 0x0A, 0x02, 0x01, 0x03,
> 0x31, 0x0B, 0x30, 0x09, 0x06,
> + 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1A, 0x05, 0x00, 0x30, 0x81, 0xF5,
> 0x06, 0x0B, 0x2A, 0x86, 0x48,
> + 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x10, 0x01, 0x04, 0xA0, 0x81, 0xE5,
> 0x04, 0x81, 0xE2, 0x30, 0x81,
> + 0xDF, 0x02, 0x01, 0x01, 0x06, 0x0A, 0x2B, 0x06, 0x01, 0x04, 0x01,
> 0xB2, 0x31, 0x02, 0x01, 0x01,
> + 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E, 0x03, 0x02, 0x1A,
> 0x05, 0x00, 0x04, 0x14, 0x0B,
> + 0x23, 0xE5, 0xBC, 0x00, 0x34, 0x5B, 0x80, 0x78, 0x3D, 0xA8, 0x7F,
> 0x2A, 0xEA, 0x2B, 0xD1, 0xFF,
> + 0xA3, 0x5D, 0x26, 0x02, 0x14, 0x1D, 0xB9, 0x80, 0x23, 0xB7, 0x31,
> 0xAC, 0xC2, 0x54, 0x58, 0x3A,
> + 0xC7, 0x47, 0x58, 0x96, 0x28, 0x22, 0x2C, 0x88, 0x37, 0x18, 0x0F,
> 0x32, 0x30, 0x31, 0x35, 0x30,
> + 0x38, 0x31, 0x39, 0x30, 0x31, 0x35, 0x35, 0x32, 0x38, 0x5A, 0xA0,
> 0x81, 0x83, 0xA4, 0x81, 0x80,
> + 0x30, 0x7E, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
> 0x13, 0x02, 0x47, 0x42, 0x31,
> + 0x1B, 0x30, 0x19, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x12, 0x47,
> 0x72, 0x65, 0x61, 0x74, 0x65,
> + 0x72, 0x20, 0x4D, 0x61, 0x6E, 0x63, 0x68, 0x65, 0x73, 0x74, 0x65,
> 0x72, 0x31, 0x10, 0x30, 0x0E,
> + 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x07, 0x53, 0x61, 0x6C, 0x66,
> 0x6F, 0x72, 0x64, 0x31, 0x1A,
> + 0x30, 0x18, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x13, 0x11, 0x43, 0x4F,
> 0x4D, 0x4F, 0x44, 0x4F, 0x20,
> + 0x43, 0x41, 0x20, 0x4C, 0x69, 0x6D, 0x69, 0x74, 0x65, 0x64, 0x31,
> 0x24, 0x30, 0x22, 0x06, 0x03,
> + 0x55, 0x04, 0x03, 0x13, 0x1B, 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F,
> 0x20, 0x54, 0x69, 0x6D, 0x65,
> + 0x20, 0x53, 0x74, 0x61, 0x6D, 0x70, 0x69, 0x6E, 0x67, 0x20, 0x53,
> 0x69, 0x67, 0x6E, 0x65, 0x72,
> + 0xA0, 0x82, 0x04, 0x98, 0x30, 0x82, 0x04, 0x94, 0x30, 0x82, 0x03,
> 0x7C, 0xA0, 0x03, 0x02, 0x01,
> + 0x02, 0x02, 0x11, 0x00, 0x9F, 0xEA, 0xC8, 0x11, 0xB0, 0xF1, 0x62,
> 0x47, 0xA5, 0xFC, 0x20, 0xD8,
> + 0x05, 0x23, 0xAC, 0xE6, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48,
> 0x86, 0xF7, 0x0D, 0x01, 0x01,
> + 0x05, 0x05, 0x00, 0x30, 0x81, 0x95, 0x31, 0x0B, 0x30, 0x09, 0x06,
> 0x03, 0x55, 0x04, 0x06, 0x13,
> + 0x02, 0x55, 0x53, 0x31, 0x0B, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04,
> 0x08, 0x13, 0x02, 0x55, 0x54,
> + 0x31, 0x17, 0x30, 0x15, 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x0E,
> 0x53, 0x61, 0x6C, 0x74, 0x20,
> + 0x4C, 0x61, 0x6B, 0x65, 0x20, 0x43, 0x69, 0x74, 0x79, 0x31, 0x1E,
> 0x30, 0x1C, 0x06, 0x03, 0x55,
> + 0x04, 0x0A, 0x13, 0x15, 0x54, 0x68, 0x65, 0x20, 0x55, 0x53, 0x45,
> 0x52, 0x54, 0x52, 0x55, 0x53,
> + 0x54, 0x20, 0x4E, 0x65, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x31, 0x21,
> 0x30, 0x1F, 0x06, 0x03, 0x55,
> + 0x04, 0x0B, 0x13, 0x18, 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F,
> 0x77, 0x77, 0x77, 0x2E, 0x75,
> + 0x73, 0x65, 0x72, 0x74, 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F,
> 0x6D, 0x31, 0x1D, 0x30, 0x1B,
> + 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x14, 0x55, 0x54, 0x4E, 0x2D,
> 0x55, 0x53, 0x45, 0x52, 0x46,
> + 0x69, 0x72, 0x73, 0x74, 0x2D, 0x4F, 0x62, 0x6A, 0x65, 0x63, 0x74,
> 0x30, 0x1E, 0x17, 0x0D, 0x31,
> + 0x35, 0x30, 0x35, 0x30, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
> 0x5A, 0x17, 0x0D, 0x31, 0x35,
> + 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5A,
> 0x30, 0x7E, 0x31, 0x0B, 0x30,
> + 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x47, 0x42, 0x31,
> 0x1B, 0x30, 0x19, 0x06, 0x03,
> + 0x55, 0x04, 0x08, 0x13, 0x12, 0x47, 0x72, 0x65, 0x61, 0x74, 0x65,
> 0x72, 0x20, 0x4D, 0x61, 0x6E,
> + 0x63, 0x68, 0x65, 0x73, 0x74, 0x65, 0x72, 0x31, 0x10, 0x30, 0x0E,
> 0x06, 0x03, 0x55, 0x04, 0x07,
> + 0x13, 0x07, 0x53, 0x61, 0x6C, 0x66, 0x6F, 0x72, 0x64, 0x31, 0x1A,
> 0x30, 0x18, 0x06, 0x03, 0x55,
> + 0x04, 0x0A, 0x13, 0x11, 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F, 0x20,
> 0x43, 0x41, 0x20, 0x4C, 0x69,
> + 0x6D, 0x69, 0x74, 0x65, 0x64, 0x31, 0x24, 0x30, 0x22, 0x06, 0x03,
> 0x55, 0x04, 0x03, 0x13, 0x1B,
> + 0x43, 0x4F, 0x4D, 0x4F, 0x44, 0x4F, 0x20, 0x54, 0x69, 0x6D, 0x65,
> 0x20, 0x53, 0x74, 0x61, 0x6D,
> + 0x70, 0x69, 0x6E, 0x67, 0x20, 0x53, 0x69, 0x67, 0x6E, 0x65, 0x72,
> 0x30, 0x82, 0x01, 0x22, 0x30,
> + 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x03, 0x82,
> + 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A, 0x02, 0x82, 0x01, 0x01,
> 0x00, 0xBC, 0x35, 0xA0, 0x36,
> + 0x70, 0x22, 0x81, 0x11, 0xC3, 0xB2, 0x83, 0xB9, 0xD3, 0x28, 0xC6,
> 0x36, 0xCD, 0x25, 0x6B, 0xA9,
> + 0x7B, 0xB2, 0x1C, 0xF6, 0x9B, 0x51, 0x9C, 0xEF, 0x35, 0xF4, 0xED,
> 0x08, 0x8E, 0x5E, 0x38, 0x08,
> + 0xF8, 0x77, 0x3C, 0x0A, 0x42, 0xE0, 0xF3, 0x70, 0xDC, 0xA3, 0xD7,
> 0xCA, 0xF5, 0x4C, 0x0B, 0xCF,
> + 0xFF, 0x22, 0x9C, 0x0A, 0x7E, 0x68, 0xD6, 0x09, 0xA2, 0x2A, 0x84,
> 0x7B, 0xA6, 0x9D, 0xB4, 0xA9,
> + 0xC1, 0x33, 0xE2, 0xEF, 0x1F, 0x17, 0x48, 0xCA, 0x3A, 0xCD, 0x46,
> 0xE6, 0xC5, 0xAA, 0x77, 0xBD,
> + 0xE3, 0x77, 0x9A, 0xFA, 0x47, 0x53, 0x40, 0x28, 0x59, 0x43, 0x93,
> 0xF1, 0xA4, 0x81, 0xEA, 0xEF,
> + 0x80, 0xB5, 0x4F, 0xA7, 0x08, 0xCE, 0xBA, 0x6E, 0xBC, 0xCA, 0x76,
> 0x0C, 0x97, 0x64, 0x59, 0x86,
> + 0x24, 0xBB, 0x3D, 0x82, 0x90, 0xA8, 0x55, 0xB1, 0x92, 0xD3, 0xA0,
> 0xA7, 0x05, 0xAC, 0x9F, 0x53,
> + 0x25, 0x08, 0x10, 0x47, 0x99, 0xCD, 0x98, 0xDE, 0x68, 0xE5, 0xB4,
> 0x50, 0x78, 0xA3, 0xAF, 0x01,
> + 0xCC, 0x59, 0x43, 0x58, 0xE4, 0x76, 0x6E, 0x7E, 0xAC, 0xC7, 0xE2,
> 0x9E, 0x1F, 0x4F, 0xB0, 0x47,
> + 0x2D, 0xC8, 0x0C, 0xA3, 0x49, 0x27, 0x80, 0x75, 0x8C, 0xBB, 0x06,
> 0x91, 0x65, 0x0F, 0x90, 0x9B,
> + 0xF4, 0xBA, 0xD1, 0x81, 0xC8, 0x5C, 0x6A, 0xEC, 0x14, 0xE9, 0x25,
> 0x09, 0xBF, 0x23, 0x16, 0xF4,
> + 0x95, 0x46, 0x40, 0x40, 0x21, 0xBB, 0x83, 0x96, 0xFD, 0x86, 0x1F,
> 0x7A, 0xC8, 0x0D, 0x10, 0x8E,
> + 0xA2, 0xF8, 0x19, 0x07, 0x58, 0x7F, 0x9F, 0xBD, 0x37, 0x02, 0x60,
> 0xF2, 0xA4, 0xE9, 0x9D, 0x44,
> + 0x3F, 0x30, 0x05, 0xE4, 0xA7, 0x70, 0x99, 0x51, 0x9A, 0xE8, 0x17,
> 0xF1, 0x55, 0xCA, 0xB2, 0x61,
> + 0x89, 0x65, 0x46, 0xA7, 0x6A, 0xF2, 0x58, 0x46, 0x7E, 0xAA, 0xA0,
> 0x07, 0x02, 0x03, 0x01, 0x00,
> + 0x01, 0xA3, 0x81, 0xF4, 0x30, 0x81, 0xF1, 0x30, 0x1F, 0x06, 0x03,
> 0x55, 0x1D, 0x23, 0x04, 0x18,
> + 0x30, 0x16, 0x80, 0x14, 0xDA, 0xED, 0x64, 0x74, 0x14, 0x9C, 0x14,
> 0x3C, 0xAB, 0xDD, 0x99, 0xA9,
> + 0xBD, 0x5B, 0x28, 0x4D, 0x8B, 0x3C, 0xC9, 0xD8, 0x30, 0x1D, 0x06,
> 0x03, 0x55, 0x1D, 0x0E, 0x04,
> + 0x16, 0x04, 0x14, 0x2E, 0x2D, 0xB0, 0x0A, 0x44, 0x4A, 0xD3, 0x87,
> 0xC0, 0x02, 0x07, 0xCE, 0x97,
> + 0x7D, 0x50, 0x62, 0x20, 0xFD, 0x0F, 0x83, 0x30, 0x0E, 0x06, 0x03,
> 0x55, 0x1D, 0x0F, 0x01, 0x01,
> + 0xFF, 0x04, 0x04, 0x03, 0x02, 0x06, 0xC0, 0x30, 0x0C, 0x06, 0x03,
> 0x55, 0x1D, 0x13, 0x01, 0x01,
> + 0xFF, 0x04, 0x02, 0x30, 0x00, 0x30, 0x16, 0x06, 0x03, 0x55, 0x1D,
> 0x25, 0x01, 0x01, 0xFF, 0x04,
> + 0x0C, 0x30, 0x0A, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x03, 0x08, 0x30, 0x42, 0x06,
> + 0x03, 0x55, 0x1D, 0x1F, 0x04, 0x3B, 0x30, 0x39, 0x30, 0x37, 0xA0,
> 0x35, 0xA0, 0x33, 0x86, 0x31,
> + 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x63, 0x72, 0x6C, 0x2E,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> + 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x2F, 0x55, 0x54,
> 0x4E, 0x2D, 0x55, 0x53, 0x45,
> + 0x52, 0x46, 0x69, 0x72, 0x73, 0x74, 0x2D, 0x4F, 0x62, 0x6A, 0x65,
> 0x63, 0x74, 0x2E, 0x63, 0x72,
> + 0x6C, 0x30, 0x35, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x01, 0x01, 0x04, 0x29, 0x30,
> + 0x27, 0x30, 0x25, 0x06, 0x08, 0x2B, 0x06, 0x01, 0x05, 0x05, 0x07,
> 0x30, 0x01, 0x86, 0x19, 0x68,
> + 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x6F, 0x63, 0x73, 0x70, 0x2E,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> + 0x72, 0x75, 0x73, 0x74, 0x2E, 0x63, 0x6F, 0x6D, 0x30, 0x0D, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> + 0xF7, 0x0D, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01,
> 0x00, 0x0D, 0xBB, 0xAD, 0x60,
> + 0x11, 0x1B, 0xB5, 0xF0, 0x0D, 0xCC, 0xE6, 0x48, 0x3A, 0x7A, 0x3E,
> 0x0E, 0x33, 0xDC, 0x1C, 0xB9,
> + 0xEA, 0xD6, 0x20, 0xFE, 0xA3, 0x4D, 0xD0, 0xCC, 0x76, 0x4E, 0xE8,
> 0x18, 0xD8, 0x79, 0xDF, 0xD3,
> + 0x4F, 0x9A, 0x42, 0x64, 0x23, 0x8A, 0x29, 0x72, 0x8A, 0x3A, 0x6C,
> 0x66, 0xA6, 0x3C, 0x3A, 0x17,
> + 0xA8, 0x70, 0x45, 0x65, 0xC6, 0x73, 0xC3, 0xD0, 0xCE, 0x89, 0x54,
> 0xFB, 0xAC, 0x69, 0x0F, 0x58,
> + 0xB0, 0x19, 0xCB, 0x86, 0x9F, 0x7E, 0xB9, 0x7E, 0xEB, 0x51, 0x92,
> 0xBF, 0x9B, 0xDD, 0xEB, 0xD1,
> + 0x65, 0xF0, 0x25, 0x7B, 0x88, 0x7C, 0xDE, 0xBD, 0xA5, 0xC8, 0xB5,
> 0x14, 0x51, 0xBC, 0xC0, 0x81,
> + 0x30, 0x8A, 0x85, 0x38, 0x7B, 0xE6, 0x79, 0xFE, 0x67, 0x55, 0x93,
> 0x87, 0xFE, 0x4F, 0xE8, 0x8D,
> + 0x0E, 0xED, 0xF3, 0x72, 0x92, 0xB5, 0xC2, 0x89, 0x80, 0x6D, 0xD1,
> 0x59, 0xE3, 0x1D, 0x0D, 0xEA,
> + 0xB1, 0x38, 0xEE, 0x03, 0x9D, 0x00, 0x19, 0xA5, 0xAB, 0x21, 0x9B,
> 0x79, 0xC3, 0xCC, 0xC2, 0x3E,
> + 0x68, 0x7E, 0xBD, 0xC9, 0x4D, 0x69, 0x4D, 0xB4, 0x64, 0x51, 0xFB,
> 0xB2, 0x28, 0x74, 0xE2, 0x53,
> + 0x89, 0xCE, 0x9D, 0xFA, 0xAD, 0xE2, 0xDB, 0xCE, 0xAB, 0x7B, 0x7E,
> 0x06, 0x44, 0x74, 0xFD, 0x0A,
> + 0xA3, 0xC9, 0xB7, 0xA7, 0x30, 0xCD, 0x49, 0xD2, 0x92, 0x64, 0xF1,
> 0x22, 0xA6, 0xB8, 0x28, 0x45,
> + 0x74, 0x79, 0xE9, 0xA7, 0xCE, 0x3B, 0x33, 0xF9, 0x83, 0x50, 0x94,
> 0x7D, 0x68, 0xC0, 0x1D, 0x49,
> + 0xC7, 0x60, 0x78, 0x7A, 0x3C, 0x64, 0x26, 0xD5, 0xBE, 0xFA, 0x0A,
> 0x6D, 0xE4, 0x1E, 0xE1, 0x09,
> + 0x53, 0x8F, 0xA9, 0xC5, 0x23, 0xAC, 0xC7, 0x9D, 0x61, 0x42, 0x21,
> 0xF0, 0x2C, 0x16, 0x71, 0x49,
> + 0x3B, 0x10, 0xAF, 0x2C, 0x6F, 0x1A, 0xE6, 0x31, 0xF1, 0x14, 0xFD,
> 0x6C, 0x31, 0x82, 0x02, 0x62,
> + 0x30, 0x82, 0x02, 0x5E, 0x02, 0x01, 0x01, 0x30, 0x81, 0xAB, 0x30,
> 0x81, 0x95, 0x31, 0x0B, 0x30,
> + 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x55, 0x53, 0x31,
> 0x0B, 0x30, 0x09, 0x06, 0x03,
> + 0x55, 0x04, 0x08, 0x13, 0x02, 0x55, 0x54, 0x31, 0x17, 0x30, 0x15,
> 0x06, 0x03, 0x55, 0x04, 0x07,
> + 0x13, 0x0E, 0x53, 0x61, 0x6C, 0x74, 0x20, 0x4C, 0x61, 0x6B, 0x65,
> 0x20, 0x43, 0x69, 0x74, 0x79,
> + 0x31, 0x1E, 0x30, 0x1C, 0x06, 0x03, 0x55, 0x04, 0x0A, 0x13, 0x15,
> 0x54, 0x68, 0x65, 0x20, 0x55,
> + 0x53, 0x45, 0x52, 0x54, 0x52, 0x55, 0x53, 0x54, 0x20, 0x4E, 0x65,
> 0x74, 0x77, 0x6F, 0x72, 0x6B,
> + 0x31, 0x21, 0x30, 0x1F, 0x06, 0x03, 0x55, 0x04, 0x0B, 0x13, 0x18,
> 0x68, 0x74, 0x74, 0x70, 0x3A,
> + 0x2F, 0x2F, 0x77, 0x77, 0x77, 0x2E, 0x75, 0x73, 0x65, 0x72, 0x74,
> 0x72, 0x75, 0x73, 0x74, 0x2E,
> + 0x63, 0x6F, 0x6D, 0x31, 0x1D, 0x30, 0x1B, 0x06, 0x03, 0x55, 0x04,
> 0x03, 0x13, 0x14, 0x55, 0x54,
> + 0x4E, 0x2D, 0x55, 0x53, 0x45, 0x52, 0x46, 0x69, 0x72, 0x73, 0x74,
> 0x2D, 0x4F, 0x62, 0x6A, 0x65,
> + 0x63, 0x74, 0x02, 0x11, 0x00, 0x9F, 0xEA, 0xC8, 0x11, 0xB0, 0xF1,
> 0x62, 0x47, 0xA5, 0xFC, 0x20,
> + 0xD8, 0x05, 0x23, 0xAC, 0xE6, 0x30, 0x09, 0x06, 0x05, 0x2B, 0x0E,
> 0x03, 0x02, 0x1A, 0x05, 0x00,
> + 0xA0, 0x81, 0x8C, 0x30, 0x1A, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86,
> 0xF7, 0x0D, 0x01, 0x09, 0x03,
> + 0x31, 0x0D, 0x06, 0x0B, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01,
> 0x09, 0x10, 0x01, 0x04, 0x30,
> + 0x1C, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09,
> 0x05, 0x31, 0x0F, 0x17, 0x0D,
> + 0x31, 0x35, 0x30, 0x38, 0x31, 0x39, 0x30, 0x31, 0x35, 0x35, 0x32,
> 0x38, 0x5A, 0x30, 0x23, 0x06,
> + 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x09, 0x04, 0x31,
> 0x16, 0x04, 0x14, 0xD4, 0xD6,
> + 0xA6, 0x46, 0x5F, 0x10, 0xF2, 0x3F, 0x76, 0x67, 0x5E, 0x37, 0xEB,
> 0x89, 0xDD, 0xCD, 0xA9, 0xD2,
> + 0x78, 0x2E, 0x30, 0x2B, 0x06, 0x0B, 0x2A, 0x86, 0x48, 0x86, 0xF7,
> 0x0D, 0x01, 0x09, 0x10, 0x02,
> + 0x0C, 0x31, 0x1C, 0x30, 0x1A, 0x30, 0x18, 0x30, 0x16, 0x04, 0x14,
> 0xDF, 0x94, 0x6A, 0x5E, 0x50,
> + 0x30, 0x15, 0x77, 0x7F, 0xD2, 0x2F, 0x46, 0xB5, 0x62, 0x4E, 0xCD,
> 0x27, 0xBE, 0xE3, 0x76, 0x30,
> + 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x04, 0x82,
> + 0x01, 0x00, 0x60, 0x59, 0x47, 0x46, 0x6E, 0x02, 0x30, 0x14, 0x4D,
> 0xDE, 0xFB, 0x35, 0xF0, 0x88,
> + 0x85, 0x4F, 0xFF, 0x82, 0x25, 0x3B, 0x64, 0xDD, 0xC6, 0x4F, 0x76,
> 0xC7, 0x85, 0x8B, 0xD8, 0x36,
> + 0x23, 0x8B, 0xA4, 0x75, 0x75, 0xAD, 0xF2, 0x27, 0x00, 0xFB, 0x19,
> 0x83, 0xA0, 0x16, 0xEF, 0x45,
> + 0xAB, 0xF7, 0x18, 0xC9, 0x6F, 0xDE, 0xB8, 0xA5, 0xE6, 0x2C, 0xB0,
> 0xF2, 0x35, 0x6C, 0x90, 0x10,
> + 0xDC, 0x77, 0xB5, 0xC4, 0x0E, 0x88, 0x73, 0x01, 0x5B, 0xD5, 0x5A,
> 0x03, 0x3A, 0x76, 0x90, 0xFB,
> + 0x09, 0xAB, 0x36, 0x8D, 0xD3, 0x75, 0x21, 0xE7, 0xF4, 0x9A, 0x18,
> 0x37, 0x5B, 0x8A, 0xCA, 0xFF,
> + 0xC6, 0xD6, 0x00, 0xEA, 0xA9, 0x5B, 0xE6, 0xDB, 0xD5, 0x38, 0x89,
> 0x19, 0x77, 0x66, 0x86, 0x30,
> + 0x67, 0x06, 0x33, 0x49, 0xA6, 0x69, 0x60, 0x99, 0xA4, 0xB4, 0x53,
> 0x91, 0x31, 0x76, 0x0E, 0x6E,
> + 0x61, 0x7E, 0xDB, 0x37, 0xB5, 0x86, 0xA0, 0x47, 0x5E, 0x43, 0xAC,
> 0xFE, 0x44, 0xAA, 0x89, 0x65,
> + 0xB8, 0xAD, 0x7C, 0x7D, 0xA6, 0x1D, 0x69, 0x52, 0xB3, 0x3B, 0xB6,
> 0xD7, 0xCD, 0xA2, 0x44, 0x29,
> + 0x82, 0x22, 0xBD, 0x87, 0x4E, 0xA3, 0x3F, 0xFF, 0x85, 0x1D, 0xE7,
> 0xE4, 0xB1, 0xF6, 0xEB, 0xF8,
> + 0x32, 0xB1, 0x25, 0x6F, 0x14, 0x49, 0x10, 0x3E, 0x1E, 0x05, 0xED,
> 0x6C, 0x86, 0xC8, 0xFD, 0x79,
> + 0x2D, 0x45, 0xB1, 0x55, 0x19, 0xC2, 0x94, 0xE3, 0x8F, 0x31, 0x58,
> 0xCB, 0xBC, 0xA3, 0xAB, 0x89,
> + 0xFB, 0x94, 0xC5, 0x88, 0xE8, 0xA3, 0x28, 0xC4, 0xB0, 0xC5, 0x75,
> 0x15, 0xAA, 0xF4, 0xBB, 0x62,
> + 0x4B, 0xEE, 0x10, 0xA6, 0x13, 0x2E, 0x71, 0x29, 0xE6, 0x72, 0xD9,
> 0xFC, 0xA2, 0xF1, 0x0F, 0x65,
> + 0x58, 0xE1, 0xF0, 0x21, 0x31, 0x57, 0x8E, 0xF0, 0x3D, 0xF0, 0xC5,
> 0x69, 0xAC, 0xED, 0x7E, 0x1A,
> + 0x00, 0xA0
> +};
> +
> +//
> +// Detached PKCS7 signedData (by signing TestBin with TestSub
> Certificate)
> +//
> +UINT8 P7Detached[1138] = {
> +0x30, 0x82, 0x04, 0x6E, 0x02, 0x01, 0x01, 0x31, 0x0F, 0x30, 0x0D,
> 0x06, 0x09, 0x60, 0x86, 0x48,
> +0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, 0x00, 0x30, 0x0B, 0x06,
> 0x09, 0x2A, 0x86, 0x48, 0x86,
> +0xF7, 0x0D, 0x01, 0x07, 0x01, 0xA0, 0x82, 0x02, 0xF3, 0x30, 0x82,
> 0x02, 0xEF, 0x30, 0x82, 0x01,
> +0xDB, 0xA0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x10, 0xF9, 0xCD, 0x3A,
> 0x06, 0x4D, 0x83, 0x34, 0xAB,
> +0x4A, 0x5C, 0xF2, 0x7D, 0xC8, 0x72, 0xD6, 0x28, 0x30, 0x09, 0x06,
> 0x05, 0x2B, 0x0E, 0x03, 0x02,
> +0x1D, 0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F, 0x06, 0x03,
> 0x55, 0x04, 0x03, 0x13, 0x08,
> +0x54, 0x65, 0x73, 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x30, 0x1E, 0x17,
> 0x0D, 0x31, 0x35, 0x30, 0x38,
> +0x31, 0x33, 0x30, 0x36, 0x35, 0x32, 0x35, 0x32, 0x5A, 0x17, 0x0D,
> 0x33, 0x39, 0x31, 0x32, 0x33,
> +0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5A, 0x30, 0x12, 0x31,
> 0x10, 0x30, 0x0E, 0x06, 0x03,
> +0x55, 0x04, 0x03, 0x13, 0x07, 0x54, 0x65, 0x73, 0x74, 0x53, 0x75,
> 0x62, 0x30, 0x82, 0x01, 0x22,
> +0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01,
> 0x01, 0x01, 0x05, 0x00, 0x03,
> +0x82, 0x01, 0x0F, 0x00, 0x30, 0x82, 0x01, 0x0A, 0x02, 0x82, 0x01,
> 0x01, 0x00, 0xB1, 0x6D, 0x01,
> +0x2E, 0xC2, 0xEA, 0x72, 0x83, 0xDA, 0x47, 0xCF, 0xC2, 0xB9, 0x03,
> 0xC5, 0x2D, 0x1E, 0x06, 0xA1,
> +0x36, 0xD2, 0x81, 0x7B, 0x51, 0xAA, 0x10, 0xDD, 0x74, 0xCB, 0x57,
> 0x41, 0x1F, 0xFE, 0x5A, 0x9C,
> +0xA1, 0x81, 0x0A, 0xDF, 0x0A, 0x54, 0x38, 0xA2, 0xA5, 0x35, 0xAF,
> 0xB3, 0xD0, 0x43, 0xC1, 0x11,
> +0xBB, 0xFD, 0x82, 0x4A, 0x64, 0xBF, 0x35, 0xE4, 0xC5, 0x95, 0x1A,
> 0x2B, 0x6D, 0x3D, 0xA7, 0x06,
> +0x26, 0xBF, 0xBA, 0x3A, 0x92, 0x39, 0xC2, 0xB5, 0x24, 0xA2, 0xE7,
> 0x91, 0x91, 0xD6, 0x83, 0x15,
> +0x4A, 0x45, 0x6A, 0x90, 0x43, 0xD5, 0x4E, 0x18, 0xD2, 0xCE, 0xA7,
> 0xCA, 0x0B, 0x0A, 0x1E, 0x80,
> +0xE2, 0x97, 0xB3, 0x62, 0xC3, 0xAC, 0x36, 0x5A, 0x10, 0x78, 0xB9,
> 0x87, 0xBA, 0xFB, 0x36, 0xE3,
> +0xC2, 0x39, 0x66, 0x68, 0x1C, 0x31, 0xD4, 0x32, 0xE3, 0x4F, 0x62,
> 0x3A, 0x32, 0x4B, 0xC6, 0xF4,
> +0x56, 0xCD, 0xC1, 0xDF, 0x76, 0x52, 0x43, 0x4F, 0xB4, 0x2E, 0x29,
> 0x06, 0x0A, 0x28, 0xB9, 0x03,
> +0xDD, 0x65, 0x81, 0x1A, 0x7A, 0x47, 0x2F, 0x86, 0xAB, 0x37, 0xD9,
> 0xE3, 0x83, 0x6C, 0xE0, 0x7D,
> +0x74, 0x26, 0x16, 0x8F, 0xCC, 0x2C, 0x12, 0xBB, 0x06, 0xD5, 0x7E,
> 0x3B, 0x5A, 0xE7, 0x22, 0x1B,
> +0x41, 0xB3, 0x9F, 0xA4, 0x8C, 0x09, 0xC6, 0x8B, 0x4C, 0x60, 0xF1,
> 0x9D, 0xDE, 0x94, 0x05, 0x19,
> +0xC4, 0xE3, 0x10, 0x31, 0x02, 0xE0, 0xEF, 0x4B, 0x7B, 0x76, 0xBF,
> 0xB2, 0xC3, 0xC8, 0x13, 0x67,
> +0xEF, 0x15, 0xF5, 0xAB, 0x17, 0xF9, 0x8B, 0x99, 0x09, 0xEC, 0x17,
> 0xC7, 0x94, 0xDB, 0x3E, 0xAE,
> +0x88, 0x49, 0x4B, 0xBC, 0x28, 0x02, 0x57, 0xF6, 0xED, 0xF7, 0xDE,
> 0x1F, 0xEA, 0x67, 0x86, 0xCA,
> +0x40, 0x61, 0x0F, 0x2C, 0xBA, 0xCD, 0xC0, 0x55, 0x5E, 0xDC, 0xF8,
> 0xCD, 0x53, 0x02, 0x03, 0x01,
> +0x00, 0x01, 0xA3, 0x48, 0x30, 0x46, 0x30, 0x44, 0x06, 0x03, 0x55,
> 0x1D, 0x01, 0x04, 0x3D, 0x30,
> +0x3B, 0x80, 0x10, 0x84, 0xB5, 0x25, 0xA3, 0xD7, 0x99, 0x43, 0xE5,
> 0x71, 0xD3, 0x1D, 0xEE, 0x15,
> +0x25, 0x0C, 0x6A, 0xA1, 0x15, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0F,
> 0x06, 0x03, 0x55, 0x04, 0x03,
> +0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6F, 0x6F, 0x74, 0x82,
> 0x10, 0x6F, 0xC8, 0x9C, 0x84,
> +0x28, 0x03, 0x85, 0x9B, 0x49, 0xA7, 0xD3, 0x63, 0x4F, 0xCC, 0x11,
> 0xF4, 0x30, 0x09, 0x06, 0x05,
> +0x2B, 0x0E, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01,
> 0x00, 0x10, 0x5F, 0xC3, 0xCD,
> +0x68, 0x05, 0x16, 0x26, 0x94, 0xBE, 0xEC, 0x30, 0x4A, 0x78, 0x58,
> 0x7A, 0xC8, 0xAC, 0x9E, 0xDF,
> +0xF3, 0x8A, 0x31, 0x33, 0x92, 0x24, 0x18, 0xF5, 0x88, 0x1E, 0xBC,
> 0xFA, 0xA0, 0xC2, 0x14, 0x74,
> +0xE1, 0x7B, 0x98, 0x84, 0x8B, 0xF5, 0x27, 0x2C, 0x70, 0x99, 0x8E,
> 0x98, 0x11, 0x01, 0xF7, 0xC9,
> +0x52, 0xD2, 0x1B, 0x36, 0xC9, 0x9F, 0xC5, 0x80, 0x7C, 0xCF, 0xD8,
> 0xC1, 0xC9, 0x40, 0xF9, 0x91,
> +0x27, 0xD0, 0x90, 0x3D, 0x1A, 0xDB, 0x60, 0x58, 0x66, 0x4D, 0xD7,
> 0xA4, 0x98, 0x37, 0x21, 0x93,
> +0xB7, 0x87, 0xD3, 0x71, 0x6B, 0x36, 0xA2, 0x40, 0xFC, 0x19, 0x51,
> 0x80, 0x1D, 0xD6, 0xEF, 0x9E,
> +0x5B, 0xD9, 0x7B, 0x02, 0x04, 0xE4, 0x53, 0x40, 0x5F, 0x3E, 0xE2,
> 0x4D, 0xEB, 0x19, 0x9E, 0xAF,
> +0xC5, 0x5B, 0x8E, 0x4F, 0x6B, 0x7B, 0xC8, 0xB4, 0xC9, 0x35, 0xA3,
> 0x8B, 0xB4, 0x7B, 0x97, 0x08,
> +0x49, 0x3E, 0x9B, 0x20, 0x49, 0x81, 0x1C, 0x85, 0xE5, 0xEF, 0x58,
> 0x46, 0x4F, 0x63, 0xF7, 0x49,
> +0x3A, 0x1B, 0x83, 0xCD, 0x7C, 0x9B, 0xC2, 0xF8, 0xC2, 0x5D, 0x62,
> 0xD2, 0x4D, 0x18, 0xAD, 0x87,
> +0x77, 0x54, 0x6F, 0x8C, 0x6A, 0x31, 0x64, 0x2E, 0xFD, 0x29, 0x8F,
> 0xDF, 0xC8, 0xC7, 0x35, 0x91,
> +0xE4, 0x76, 0xA1, 0x0E, 0x03, 0x8F, 0xC1, 0xBF, 0x35, 0x4B, 0x2A,
> 0xF1, 0x7F, 0x8B, 0x0F, 0xC3,
> +0x9D, 0x5D, 0x41, 0x40, 0x8A, 0x05, 0xEB, 0x53, 0xE6, 0xF4, 0x03,
> 0x33, 0x07, 0xAB, 0x21, 0x51,
> +0x50, 0x37, 0xB5, 0x65, 0x43, 0x4D, 0x25, 0x8B, 0xB0, 0x77, 0x47,
> 0xA3, 0xC7, 0x1C, 0xC7, 0xE7,
> +0xB4, 0x8B, 0x4D, 0x9E, 0x5B, 0x77, 0xE3, 0x36, 0x69, 0xB4, 0x8F,
> 0x0D, 0x6C, 0xD0, 0xC5, 0x9D,
> +0x8D, 0xD2, 0x49, 0xED, 0x5B, 0x21, 0x61, 0xF6, 0x2C, 0x74, 0x84,
> 0xA1, 0x31, 0x82, 0x01, 0x52,
> +0x30, 0x82, 0x01, 0x4E, 0x02, 0x01, 0x01, 0x30, 0x27, 0x30, 0x13,
> 0x31, 0x11, 0x30, 0x0F, 0x06,
> +0x03, 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52,
> 0x6F, 0x6F, 0x74, 0x02, 0x10,
> +0xF9, 0xCD, 0x3A, 0x06, 0x4D, 0x83, 0x34, 0xAB, 0x4A, 0x5C, 0xF2,
> 0x7D, 0xC8, 0x72, 0xD6, 0x28,
> +0x30, 0x0D, 0x06, 0x09, 0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04,
> 0x02, 0x01, 0x05, 0x00, 0x30,
> +0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01,
> 0x01, 0x05, 0x00, 0x04, 0x82,
> +0x01, 0x00, 0x22, 0xB9, 0x4A, 0x53, 0xA4, 0x35, 0xF3, 0xDA, 0xF3,
> 0xA9, 0x37, 0x12, 0xF7, 0x5B,
> +0x8F, 0xFA, 0x14, 0x57, 0x86, 0x59, 0xA6, 0x9A, 0xC2, 0x7C, 0x1C,
> 0x79, 0xC3, 0xD2, 0xF8, 0x84,
> +0x6C, 0x4E, 0x14, 0x44, 0x6C, 0x56, 0x45, 0x3C, 0x38, 0xC3, 0x6B,
> 0x12, 0x02, 0x97, 0xB7, 0x86,
> +0xA7, 0xAC, 0x2E, 0x46, 0xA8, 0xF9, 0xA9, 0x57, 0x13, 0x28, 0xCE,
> 0x37, 0x57, 0x1C, 0xC9, 0xCD,
> +0x8E, 0xC4, 0xFE, 0x56, 0xC6, 0x97, 0x11, 0x2E, 0xFA, 0xE0, 0x09,
> 0x91, 0xF7, 0x30, 0xF9, 0x45,
> +0x2C, 0x41, 0xAA, 0xAF, 0xFF, 0x3D, 0x55, 0xCB, 0x89, 0x0A, 0xFE,
> 0xF6, 0x60, 0xD4, 0xDF, 0x64,
> +0xF6, 0x1C, 0xDD, 0x8C, 0x84, 0x2F, 0xB6, 0x67, 0x1D, 0xD7, 0xE2,
> 0xB9, 0x9A, 0x04, 0x07, 0xF8,
> +0xDC, 0x5B, 0xA3, 0x12, 0x91, 0x08, 0x00, 0x85, 0x95, 0xA1, 0x17,
> 0x8D, 0x93, 0x49, 0x6A, 0xAA,
> +0x4E, 0xE4, 0xF5, 0x4B, 0xDE, 0x22, 0x21, 0xE2, 0x57, 0x62, 0x7D,
> 0x6E, 0xC1, 0x31, 0x38, 0x2C,
> +0x89, 0x93, 0x07, 0x42, 0x5B, 0xDB, 0x56, 0x71, 0x39, 0x1F, 0xED,
> 0xCA, 0x43, 0x67, 0x88, 0xC9,
> +0x8E, 0x23, 0x0D, 0x68, 0x5B, 0x7E, 0x38, 0x52, 0x5C, 0x96, 0xE7,
> 0x5F, 0x32, 0x2F, 0x5F, 0x37,
> +0x4E, 0x9E, 0x27, 0xA5, 0x79, 0xF9, 0x03, 0xAB, 0x3C, 0xB5, 0x20,
> 0x1E, 0x01, 0x48, 0x9B, 0xB8,
> +0x11, 0x12, 0xB2, 0xCA, 0x8B, 0x69, 0x08, 0x5F, 0x78, 0x80, 0x09,
> 0x14, 0xA0, 0x3D, 0x57, 0x2B,
> +0xBB, 0x75, 0x9A, 0xFF, 0x33, 0xA2, 0x2B, 0x1C, 0x3B, 0xEE, 0xBF,
> 0xE5, 0x8B, 0x34, 0xDB, 0x54,
> +0x15, 0xE2, 0x5E, 0x13, 0x56, 0x02, 0x5D, 0xB9, 0x3D, 0x5A, 0x47,
> 0x59, 0x5D, 0x86, 0xC1, 0x75,
> +0xED, 0x4E, 0x12, 0xD7, 0x69, 0x76, 0xB2, 0xED, 0xBA, 0x65, 0xA2,
> 0x1A, 0xDB, 0x01, 0x81, 0x62,
> +0x7E, 0x07
> +};
> +
> +//
> +// The Comodo Time Stamping Signer Certificate Used for the
> verification of TimeStamp signature
> +// which was retrieved from signed-timestamped TestBin binary.
> +//
> +UINT8 TSRootCert[1176] = {
> + 0x30, 0x82, 0x04, 0x94, 0x30, 0x82, 0x03, 0x7c, 0xa0, 0x03, 0x02,
> 0x01, 0x02, 0x02, 0x11, 0x00,
> + 0x9f, 0xea, 0xc8, 0x11, 0xb0, 0xf1, 0x62, 0x47, 0xa5, 0xfc, 0x20,
> 0xd8, 0x05, 0x23, 0xac, 0xe6,
> + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01,
> 0x01, 0x05, 0x05, 0x00, 0x30,
> + 0x81, 0x95, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06,
> 0x13, 0x02, 0x55, 0x53, 0x31,
> + 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x08, 0x13, 0x02, 0x55,
> 0x54, 0x31, 0x17, 0x30, 0x15,
> + 0x06, 0x03, 0x55, 0x04, 0x07, 0x13, 0x0e, 0x53, 0x61, 0x6c, 0x74,
> 0x20, 0x4c, 0x61, 0x6b, 0x65,
> + 0x20, 0x43, 0x69, 0x74, 0x79, 0x31, 0x1e, 0x30, 0x1c, 0x06, 0x03,
> 0x55, 0x04, 0x0a, 0x13, 0x15,
> + 0x54, 0x68, 0x65, 0x20, 0x55, 0x53, 0x45, 0x52, 0x54, 0x52, 0x55,
> 0x53, 0x54, 0x20, 0x4e, 0x65,
> + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x31, 0x21, 0x30, 0x1f, 0x06, 0x03,
> 0x55, 0x04, 0x0b, 0x13, 0x18,
> + 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
> 0x75, 0x73, 0x65, 0x72, 0x74,
> + 0x72, 0x75, 0x73, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x31, 0x1d, 0x30,
> 0x1b, 0x06, 0x03, 0x55, 0x04,
> + 0x03, 0x13, 0x14, 0x55, 0x54, 0x4e, 0x2d, 0x55, 0x53, 0x45, 0x52,
> 0x46, 0x69, 0x72, 0x73, 0x74,
> + 0x2d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x30, 0x1e, 0x17, 0x0d,
> 0x31, 0x35, 0x30, 0x35, 0x30,
> + 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5a, 0x17, 0x0d, 0x31,
> 0x35, 0x31, 0x32, 0x33, 0x31,
> + 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a, 0x30, 0x7e, 0x31, 0x0b,
> 0x30, 0x09, 0x06, 0x03, 0x55,
> + 0x04, 0x06, 0x13, 0x02, 0x47, 0x42, 0x31, 0x1b, 0x30, 0x19, 0x06,
> 0x03, 0x55, 0x04, 0x08, 0x13,
> + 0x12, 0x47, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x20, 0x4d, 0x61,
> 0x6e, 0x63, 0x68, 0x65, 0x73,
> + 0x74, 0x65, 0x72, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04,
> 0x07, 0x13, 0x07, 0x53, 0x61,
> + 0x6c, 0x66, 0x6f, 0x72, 0x64, 0x31, 0x1a, 0x30, 0x18, 0x06, 0x03,
> 0x55, 0x04, 0x0a, 0x13, 0x11,
> + 0x43, 0x4f, 0x4d, 0x4f, 0x44, 0x4f, 0x20, 0x43, 0x41, 0x20, 0x4c,
> 0x69, 0x6d, 0x69, 0x74, 0x65,
> + 0x64, 0x31, 0x24, 0x30, 0x22, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13,
> 0x1b, 0x43, 0x4f, 0x4d, 0x4f,
> + 0x44, 0x4f, 0x20, 0x54, 0x69, 0x6d, 0x65, 0x20, 0x53, 0x74, 0x61,
> 0x6d, 0x70, 0x69, 0x6e, 0x67,
> + 0x20, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x30, 0x82, 0x01, 0x22,
> 0x30, 0x0d, 0x06, 0x09, 0x2a,
> + 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03,
> 0x82, 0x01, 0x0f, 0x00, 0x30,
> + 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xbc, 0x35, 0xa0,
> 0x36, 0x70, 0x22, 0x81, 0x11,
> + 0xc3, 0xb2, 0x83, 0xb9, 0xd3, 0x28, 0xc6, 0x36, 0xcd, 0x25, 0x6b,
> 0xa9, 0x7b, 0xb2, 0x1c, 0xf6,
> + 0x9b, 0x51, 0x9c, 0xef, 0x35, 0xf4, 0xed, 0x08, 0x8e, 0x5e, 0x38,
> 0x08, 0xf8, 0x77, 0x3c, 0x0a,
> + 0x42, 0xe0, 0xf3, 0x70, 0xdc, 0xa3, 0xd7, 0xca, 0xf5, 0x4c, 0x0b,
> 0xcf, 0xff, 0x22, 0x9c, 0x0a,
> + 0x7e, 0x68, 0xd6, 0x09, 0xa2, 0x2a, 0x84, 0x7b, 0xa6, 0x9d, 0xb4,
> 0xa9, 0xc1, 0x33, 0xe2, 0xef,
> + 0x1f, 0x17, 0x48, 0xca, 0x3a, 0xcd, 0x46, 0xe6, 0xc5, 0xaa, 0x77,
> 0xbd, 0xe3, 0x77, 0x9a, 0xfa,
> + 0x47, 0x53, 0x40, 0x28, 0x59, 0x43, 0x93, 0xf1, 0xa4, 0x81, 0xea,
> 0xef, 0x80, 0xb5, 0x4f, 0xa7,
> + 0x08, 0xce, 0xba, 0x6e, 0xbc, 0xca, 0x76, 0x0c, 0x97, 0x64, 0x59,
> 0x86, 0x24, 0xbb, 0x3d, 0x82,
> + 0x90, 0xa8, 0x55, 0xb1, 0x92, 0xd3, 0xa0, 0xa7, 0x05, 0xac, 0x9f,
> 0x53, 0x25, 0x08, 0x10, 0x47,
> + 0x99, 0xcd, 0x98, 0xde, 0x68, 0xe5, 0xb4, 0x50, 0x78, 0xa3, 0xaf,
> 0x01, 0xcc, 0x59, 0x43, 0x58,
> + 0xe4, 0x76, 0x6e, 0x7e, 0xac, 0xc7, 0xe2, 0x9e, 0x1f, 0x4f, 0xb0,
> 0x47, 0x2d, 0xc8, 0x0c, 0xa3,
> + 0x49, 0x27, 0x80, 0x75, 0x8c, 0xbb, 0x06, 0x91, 0x65, 0x0f, 0x90,
> 0x9b, 0xf4, 0xba, 0xd1, 0x81,
> + 0xc8, 0x5c, 0x6a, 0xec, 0x14, 0xe9, 0x25, 0x09, 0xbf, 0x23, 0x16,
> 0xf4, 0x95, 0x46, 0x40, 0x40,
> + 0x21, 0xbb, 0x83, 0x96, 0xfd, 0x86, 0x1f, 0x7a, 0xc8, 0x0d, 0x10,
> 0x8e, 0xa2, 0xf8, 0x19, 0x07,
> + 0x58, 0x7f, 0x9f, 0xbd, 0x37, 0x02, 0x60, 0xf2, 0xa4, 0xe9, 0x9d,
> 0x44, 0x3f, 0x30, 0x05, 0xe4,
> + 0xa7, 0x70, 0x99, 0x51, 0x9a, 0xe8, 0x17, 0xf1, 0x55, 0xca, 0xb2,
> 0x61, 0x89, 0x65, 0x46, 0xa7,
> + 0x6a, 0xf2, 0x58, 0x46, 0x7e, 0xaa, 0xa0, 0x07, 0x02, 0x03, 0x01,
> 0x00, 0x01, 0xa3, 0x81, 0xf4,
> + 0x30, 0x81, 0xf1, 0x30, 0x1f, 0x06, 0x03, 0x55, 0x1d, 0x23, 0x04,
> 0x18, 0x30, 0x16, 0x80, 0x14,
> + 0xda, 0xed, 0x64, 0x74, 0x14, 0x9c, 0x14, 0x3c, 0xab, 0xdd, 0x99,
> 0xa9, 0xbd, 0x5b, 0x28, 0x4d,
> + 0x8b, 0x3c, 0xc9, 0xd8, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e,
> 0x04, 0x16, 0x04, 0x14, 0x2e,
> + 0x2d, 0xb0, 0x0a, 0x44, 0x4a, 0xd3, 0x87, 0xc0, 0x02, 0x07, 0xce,
> 0x97, 0x7d, 0x50, 0x62, 0x20,
> + 0xfd, 0x0f, 0x83, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01,
> 0x01, 0xff, 0x04, 0x04, 0x03,
> + 0x02, 0x06, 0xc0, 0x30, 0x0c, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01,
> 0x01, 0xff, 0x04, 0x02, 0x30,
> + 0x00, 0x30, 0x16, 0x06, 0x03, 0x55, 0x1d, 0x25, 0x01, 0x01, 0xff,
> 0x04, 0x0c, 0x30, 0x0a, 0x06,
> + 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x08, 0x30, 0x42,
> 0x06, 0x03, 0x55, 0x1d, 0x1f,
> + 0x04, 0x3b, 0x30, 0x39, 0x30, 0x37, 0xa0, 0x35, 0xa0, 0x33, 0x86,
> 0x31, 0x68, 0x74, 0x74, 0x70,
> + 0x3a, 0x2f, 0x2f, 0x63, 0x72, 0x6c, 0x2e, 0x75, 0x73, 0x65, 0x72,
> 0x74, 0x72, 0x75, 0x73, 0x74,
> + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x55, 0x54, 0x4e, 0x2d, 0x55, 0x53,
> 0x45, 0x52, 0x46, 0x69, 0x72,
> + 0x73, 0x74, 0x2d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x63,
> 0x72, 0x6c, 0x30, 0x35, 0x06,
> + 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x01, 0x01, 0x04, 0x29,
> 0x30, 0x27, 0x30, 0x25, 0x06,
> + 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x30, 0x01, 0x86, 0x19,
> 0x68, 0x74, 0x74, 0x70, 0x3a,
> + 0x2f, 0x2f, 0x6f, 0x63, 0x73, 0x70, 0x2e, 0x75, 0x73, 0x65, 0x72,
> 0x74, 0x72, 0x75, 0x73, 0x74,
> + 0x2e, 0x63, 0x6f, 0x6d, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48,
> 0x86, 0xf7, 0x0d, 0x01, 0x01,
> + 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x0d, 0xbb, 0xad,
> 0x60, 0x11, 0x1b, 0xb5, 0xf0,
> + 0x0d, 0xcc, 0xe6, 0x48, 0x3a, 0x7a, 0x3e, 0x0e, 0x33, 0xdc, 0x1c,
> 0xb9, 0xea, 0xd6, 0x20, 0xfe,
> + 0xa3, 0x4d, 0xd0, 0xcc, 0x76, 0x4e, 0xe8, 0x18, 0xd8, 0x79, 0xdf,
> 0xd3, 0x4f, 0x9a, 0x42, 0x64,
> + 0x23, 0x8a, 0x29, 0x72, 0x8a, 0x3a, 0x6c, 0x66, 0xa6, 0x3c, 0x3a,
> 0x17, 0xa8, 0x70, 0x45, 0x65,
> + 0xc6, 0x73, 0xc3, 0xd0, 0xce, 0x89, 0x54, 0xfb, 0xac, 0x69, 0x0f,
> 0x58, 0xb0, 0x19, 0xcb, 0x86,
> + 0x9f, 0x7e, 0xb9, 0x7e, 0xeb, 0x51, 0x92, 0xbf, 0x9b, 0xdd, 0xeb,
> 0xd1, 0x65, 0xf0, 0x25, 0x7b,
> + 0x88, 0x7c, 0xde, 0xbd, 0xa5, 0xc8, 0xb5, 0x14, 0x51, 0xbc, 0xc0,
> 0x81, 0x30, 0x8a, 0x85, 0x38,
> + 0x7b, 0xe6, 0x79, 0xfe, 0x67, 0x55, 0x93, 0x87, 0xfe, 0x4f, 0xe8,
> 0x8d, 0x0e, 0xed, 0xf3, 0x72,
> + 0x92, 0xb5, 0xc2, 0x89, 0x80, 0x6d, 0xd1, 0x59, 0xe3, 0x1d, 0x0d,
> 0xea, 0xb1, 0x38, 0xee, 0x03,
> + 0x9d, 0x00, 0x19, 0xa5, 0xab, 0x21, 0x9b, 0x79, 0xc3, 0xcc, 0xc2,
> 0x3e, 0x68, 0x7e, 0xbd, 0xc9,
> + 0x4d, 0x69, 0x4d, 0xb4, 0x64, 0x51, 0xfb, 0xb2, 0x28, 0x74, 0xe2,
> 0x53, 0x89, 0xce, 0x9d, 0xfa,
> + 0xad, 0xe2, 0xdb, 0xce, 0xab, 0x7b, 0x7e, 0x06, 0x44, 0x74, 0xfd,
> 0x0a, 0xa3, 0xc9, 0xb7, 0xa7,
> + 0x30, 0xcd, 0x49, 0xd2, 0x92, 0x64, 0xf1, 0x22, 0xa6, 0xb8, 0x28,
> 0x45, 0x74, 0x79, 0xe9, 0xa7,
> + 0xce, 0x3b, 0x33, 0xf9, 0x83, 0x50, 0x94, 0x7d, 0x68, 0xc0, 0x1d,
> 0x49, 0xc7, 0x60, 0x78, 0x7a,
> + 0x3c, 0x64, 0x26, 0xd5, 0xbe, 0xfa, 0x0a, 0x6d, 0xe4, 0x1e, 0xe1,
> 0x09, 0x53, 0x8f, 0xa9, 0xc5,
> + 0x23, 0xac, 0xc7, 0x9d, 0x61, 0x42, 0x21, 0xf0, 0x2c, 0x16, 0x71,
> 0x49, 0x3b, 0x10, 0xaf, 0x2c,
> + 0x6f, 0x1a, 0xe6, 0x31, 0xf1, 0x14, 0xfd, 0x6c
> + };
> +
> +//
> +//TBSCert in TestSub Certificate
> +//
> +UINT8 TBSCert[479] = {
> + 0x30, 0x82, 0x01, 0xdb, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x10,
> 0xf9, 0xcd, 0x3a, 0x06, 0x4d,
> + 0x83, 0x34, 0xab, 0x4a, 0x5c, 0xf2, 0x7d, 0xc8, 0x72, 0xd6, 0x28,
> 0x30, 0x09, 0x06, 0x05, 0x2b,
> + 0x0e, 0x03, 0x02, 0x1d, 0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30,
> 0x0f, 0x06, 0x03, 0x55, 0x04,
> + 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6f, 0x6f, 0x74,
> 0x30, 0x1e, 0x17, 0x0d, 0x31,
> + 0x35, 0x30, 0x38, 0x31, 0x33, 0x30, 0x36, 0x35, 0x32, 0x35, 0x32,
> 0x5a, 0x17, 0x0d, 0x33, 0x39,
> + 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x35, 0x39, 0x35, 0x39, 0x5a,
> 0x30, 0x12, 0x31, 0x10, 0x30,
> + 0x0e, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x07, 0x54, 0x65, 0x73,
> 0x74, 0x53, 0x75, 0x62, 0x30,
> + 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
> 0xf7, 0x0d, 0x01, 0x01, 0x01,
> + 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a,
> 0x02, 0x82, 0x01, 0x01, 0x00,
> + 0xb1, 0x6d, 0x01, 0x2e, 0xc2, 0xea, 0x72, 0x83, 0xda, 0x47, 0xcf,
> 0xc2, 0xb9, 0x03, 0xc5, 0x2d,
> + 0x1e, 0x06, 0xa1, 0x36, 0xd2, 0x81, 0x7b, 0x51, 0xaa, 0x10, 0xdd,
> 0x74, 0xcb, 0x57, 0x41, 0x1f,
> + 0xfe, 0x5a, 0x9c, 0xa1, 0x81, 0x0a, 0xdf, 0x0a, 0x54, 0x38, 0xa2,
> 0xa5, 0x35, 0xaf, 0xb3, 0xd0,
> + 0x43, 0xc1, 0x11, 0xbb, 0xfd, 0x82, 0x4a, 0x64, 0xbf, 0x35, 0xe4,
> 0xc5, 0x95, 0x1a, 0x2b, 0x6d,
> + 0x3d, 0xa7, 0x06, 0x26, 0xbf, 0xba, 0x3a, 0x92, 0x39, 0xc2, 0xb5,
> 0x24, 0xa2, 0xe7, 0x91, 0x91,
> + 0xd6, 0x83, 0x15, 0x4a, 0x45, 0x6a, 0x90, 0x43, 0xd5, 0x4e, 0x18,
> 0xd2, 0xce, 0xa7, 0xca, 0x0b,
> + 0x0a, 0x1e, 0x80, 0xe2, 0x97, 0xb3, 0x62, 0xc3, 0xac, 0x36, 0x5a,
> 0x10, 0x78, 0xb9, 0x87, 0xba,
> + 0xfb, 0x36, 0xe3, 0xc2, 0x39, 0x66, 0x68, 0x1c, 0x31, 0xd4, 0x32,
> 0xe3, 0x4f, 0x62, 0x3a, 0x32,
> + 0x4b, 0xc6, 0xf4, 0x56, 0xcd, 0xc1, 0xdf, 0x76, 0x52, 0x43, 0x4f,
> 0xb4, 0x2e, 0x29, 0x06, 0x0a,
> + 0x28, 0xb9, 0x03, 0xdd, 0x65, 0x81, 0x1a, 0x7a, 0x47, 0x2f, 0x86,
> 0xab, 0x37, 0xd9, 0xe3, 0x83,
> + 0x6c, 0xe0, 0x7d, 0x74, 0x26, 0x16, 0x8f, 0xcc, 0x2c, 0x12, 0xbb,
> 0x06, 0xd5, 0x7e, 0x3b, 0x5a,
> + 0xe7, 0x22, 0x1b, 0x41, 0xb3, 0x9f, 0xa4, 0x8c, 0x09, 0xc6, 0x8b,
> 0x4c, 0x60, 0xf1, 0x9d, 0xde,
> + 0x94, 0x05, 0x19, 0xc4, 0xe3, 0x10, 0x31, 0x02, 0xe0, 0xef, 0x4b,
> 0x7b, 0x76, 0xbf, 0xb2, 0xc3,
> + 0xc8, 0x13, 0x67, 0xef, 0x15, 0xf5, 0xab, 0x17, 0xf9, 0x8b, 0x99,
> 0x09, 0xec, 0x17, 0xc7, 0x94,
> + 0xdb, 0x3e, 0xae, 0x88, 0x49, 0x4b, 0xbc, 0x28, 0x02, 0x57, 0xf6,
> 0xed, 0xf7, 0xde, 0x1f, 0xea,
> + 0x67, 0x86, 0xca, 0x40, 0x61, 0x0f, 0x2c, 0xba, 0xcd, 0xc0, 0x55,
> 0x5e, 0xdc, 0xf8, 0xcd, 0x53,
> + 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x48, 0x30, 0x46, 0x30, 0x44,
> 0x06, 0x03, 0x55, 0x1d, 0x01,
> + 0x04, 0x3d, 0x30, 0x3b, 0x80, 0x10, 0x84, 0xb5, 0x25, 0xa3, 0xd7,
> 0x99, 0x43, 0xe5, 0x71, 0xd3,
> + 0x1d, 0xee, 0x15, 0x25, 0x0c, 0x6a, 0xa1, 0x15, 0x30, 0x13, 0x31,
> 0x11, 0x30, 0x0f, 0x06, 0x03,
> + 0x55, 0x04, 0x03, 0x13, 0x08, 0x54, 0x65, 0x73, 0x74, 0x52, 0x6f,
> 0x6f, 0x74, 0x82, 0x10, 0x6f,
> + 0xc8, 0x9c, 0x84, 0x28, 0x03, 0x85, 0x9b, 0x49, 0xa7, 0xd3, 0x63,
> 0x4f, 0xcc, 0x11, 0xf4
> +};
> +
> +//
> +// The SHA256 Digest Value of Sample TBSCert in TestSub Certificate
> +//
> +UINT8 TestSubHash[32] = {
> + 0x04, 0xe7, 0x67, 0x7d, 0x45, 0x8b, 0x1a, 0x61, 0x3f, 0x9a, 0x27,
> 0xd0, 0x48, 0x92, 0xb4, 0xd5,
> + 0xe9, 0x1e, 0xee, 0xf4, 0xed, 0x71, 0x1d, 0x30, 0x2d, 0x2e, 0x20,
> 0x2c, 0x34, 0x46, 0x5d, 0xaa
> +};
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestFunction.c b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestFunction.c
> index c4f51c0..4266240 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestFunction.c
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestFunction.c
> @@ -1,240 +1,237 @@
> -/** @file
> -
> - Copyright 2016 Unified EFI, Inc.<BR>
> - Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> -Module Name:
> -
> - Pkcs7BBTestFunction.c
> -
> -Abstract:
> -
> - for EFI Driver Pkcs7 Verify Protocol's Function Test
> -
> ---*/
> -
> -#include "Pkcs7BBTestMain.h"
> -
> -extern EFI_SIGNATURE_LIST *DbEntry1;
> -extern EFI_SIGNATURE_LIST *DbEntry2;
> -extern EFI_SIGNATURE_LIST *DbEntry3;
> -extern EFI_SIGNATURE_LIST *DbEntry4;
> -extern EFI_SIGNATURE_LIST *DbEntry5;
> -
> -extern EFI_SIGNATURE_LIST *AllowedDb[3];
> -extern EFI_SIGNATURE_LIST *RevokedDb[3];
> -extern EFI_SIGNATURE_LIST *TimestampDb[3];
> -
> -EFI_STATUS
> -BBTestVerifyBufferFunctionTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - )
> -{
> - EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib;
> - EFI_STATUS Status;
> - EFI_TEST_ASSERTION AssertionType;
> - EFI_PKCS7_VERIFY_PROTOCOL *Pkcs7Verify = NULL;
> - VOID *Content;
> - UINTN ContentSize;
> -
> - Pkcs7Verify = (EFI_PKCS7_VERIFY_PROTOCOL*)ClientInterface;
> - if (Pkcs7Verify == NULL)
> - return EFI_UNSUPPORTED;
> -
> - //
> - // Get the Standard Library Interface
> - //
> +/** @file
> +
> + Copyright 2016 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> +Module Name:
> +
> + Pkcs7BBTestFunction.c
> +
> +Abstract:
> +
> + for EFI Driver Pkcs7 Verify Protocol's Function Test
> +
> +--*/
> +
> +#include "Pkcs7BBTestMain.h"
> +
> +extern EFI_SIGNATURE_LIST *DbEntry1;
> +extern EFI_SIGNATURE_LIST *DbEntry2;
> +extern EFI_SIGNATURE_LIST *DbEntry3;
> +extern EFI_SIGNATURE_LIST *DbEntry4;
> +extern EFI_SIGNATURE_LIST *DbEntry5;
> +
> +extern EFI_SIGNATURE_LIST *AllowedDb[3];
> +extern EFI_SIGNATURE_LIST *RevokedDb[3];
> +extern EFI_SIGNATURE_LIST *TimestampDb[3];
> +
> +EFI_STATUS
> +BBTestVerifyBufferFunctionTest (
> + IN EFI_BB_TEST_PROTOCOL *This,
> + IN VOID *ClientInterface,
> + IN EFI_TEST_LEVEL TestLevel,
> + IN EFI_HANDLE SupportHandle
> + )
> +{
> + EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib;
> + EFI_STATUS Status;
> + EFI_TEST_ASSERTION AssertionType;
> + EFI_PKCS7_VERIFY_PROTOCOL *Pkcs7Verify = NULL;
> + VOID *Content;
> + UINTN ContentSize;
> +
> + Pkcs7Verify = (EFI_PKCS7_VERIFY_PROTOCOL*)ClientInterface;
> + if (Pkcs7Verify == NULL)
> + return EFI_UNSUPPORTED;
> +
> + //
> + // Get the Standard Library Interface
> + //
> Status = gtBS->HandleProtocol (
> SupportHandle,
> &gEfiStandardTestLibraryGuid,
> (VOID **) &StandardLib
> );
> - if (EFI_ERROR(Status)) {
> - return Status;
> - }
> -
> - //
> - // Function test with EmbeddedData
> - //
> -
> - // Content signature was verified against hash of content, the
> signer certificate was not found in RevokedDb, and was found in
> AllowedDb.
> - AllowedDb[0] = DbEntry2;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> -
> - if (Status == EFI_SUCCESS)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid001 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, the signer's certificate was not
> found in RevokedDb, and was found in AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - Content = &Status; //The trick method to give Content a value.
> - ContentSize = 0;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, &ContentSize);
> -
> - if (Status == EFI_BUFFER_TOO_SMALL)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid002 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_BUFFER_TOO_SMALL when the size of
> buffer indicated by ContentSize is too small to hold the content.
> ContentSize updated to required size.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - Content = SctAllocateZeroPool(ContentSize);
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, &ContentSize);
> -
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - if ((Status == EFI_SUCCESS) && (ContentSize == sizeof(TestBin)) &&
> (!SctCompareMem(TestBin, Content, ContentSize)))
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> -
> - SctFreePool (Content);
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid003,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when the size of buffer
> indicated by ContentSize is big enough to hold the content, and
> retrive the correct content.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - // Content signature was verified against hash of content, signer
> is found in both AllowedDb and RevokedDb, the signing was allowed by
> reference to TimeStampDb.
> - AllowedDb[0] = DbEntry2;
> - RevokedDb[0] = DbEntry5;
> - TimestampDb[0] = DbEntry3;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> -
> - if (Status == EFI_SUCCESS)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid004 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, signer is found in both AllowedDb
> and RevokedDb, the signing was allowed by reference to TimeStampDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - //
> - // Function test with DetachedData
> - //
> - // Content signature was verified against hash of content, the
> signercertificate was not found in RevokedDb, and was found in
> AllowedDb.
> - AllowedDb[0] = DbEntry2;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> -
> - if (Status == EFI_SUCCESS)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid001 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, the signer's certificate was not
> found in RevokedDb, and was found in AllowedDb.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> - Content = &Status; //The trick method to give Content a value.
> - ContentSize = 0;
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, &ContentSize);
> -
> - if (Status == EFI_BUFFER_TOO_SMALL)
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> - else
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid002 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_BUFFER_TOO_SMALL when the size of
> buffer indicated by ContentSize is too small to hold the content.
> ContentSize updated to required size.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - Content = SctAllocateZeroPool(ContentSize);
> - Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, &ContentSize);
> -
> - AssertionType = EFI_TEST_ASSERTION_FAILED;
> -
> - if ((Status == EFI_SUCCESS) && (ContentSize == sizeof(TestBin)) &&
> (!SctCompareMem(TestBin, Content, ContentSize)))
> - AssertionType = EFI_TEST_ASSERTION_PASSED;
> -
> - SctFreePool (Content);
> -
> - StandardLib->RecordAssertion (
> - StandardLib,
> - AssertionType,
> - gPkcs7BBTestFunctionAssertionGuid003 ,
> - L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when the size of buffer
> indicated by ContentSize is big enough to hold the content, and
> retrive the correct content.",
> - L"%a:%d: Status - %r",
> - __FILE__,
> - (UINTN)__LINE__,
> - Status
> - );
> -
> -
> - //
> - // Clean the Data in all Dbs
> - //
> - AllowedDb[0] = NULL;
> - RevokedDb[0] = NULL;
> - TimestampDb[0] = NULL;
> -
> - return EFI_SUCCESS;
> -}
> -
> + if (EFI_ERROR(Status)) {
> + return Status;
> + }
> +
> + //
> + // Function test with EmbeddedData
> + //
> +
> + // Content signature was verified against hash of content, the
> signer certificate was not found in RevokedDb, and was found in
> AllowedDb.
> + AllowedDb[0] = DbEntry2;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> +
> + if (Status == EFI_SUCCESS)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid001 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, the signer's certificate was not
> found in RevokedDb, and was found in AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + Content = &Status; //The trick method to give Content a value.
> + ContentSize = 0;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, &ContentSize);
> +
> + if (Status == EFI_BUFFER_TOO_SMALL)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid002 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_BUFFER_TOO_SMALL when the size of
> buffer indicated by ContentSize is too small to hold the content.
> ContentSize updated to required size.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + Content = SctAllocateZeroPool(ContentSize);
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb,
> Content, &ContentSize);
> +
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + if ((Status == EFI_SUCCESS) && (ContentSize == sizeof(TestBin)) &&
> (!SctCompareMem(TestBin, Content, ContentSize)))
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> +
> + SctFreePool (Content);
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid003,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when the size of buffer
> indicated by ContentSize is big enough to hold the content, and
> retrive the correct content.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + // Content signature was verified against hash of content, signer
> is found in both AllowedDb and RevokedDb, the signing was allowed by
> reference to TimeStampDb.
> + AllowedDb[0] = DbEntry2;
> + RevokedDb[0] = DbEntry5;
> + TimestampDb[0] = DbEntry3;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Embedded,
> sizeof(P7Embedded), NULL, 0, AllowedDb, RevokedDb, TimestampDb, NULL,
> 0);
> +
> + if (Status == EFI_SUCCESS)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid004 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, signer is found in both AllowedDb
> and RevokedDb, the signing was allowed by reference to TimeStampDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + //
> + // Function test with DetachedData
> + //
> + // Content signature was verified against hash of content, the
> signercertificate was not found in RevokedDb, and was found in
> AllowedDb.
> + AllowedDb[0] = DbEntry2;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, NULL, 0);
> +
> + if (Status == EFI_SUCCESS)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid001 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when Content signature was
> verified against hash of content, the signer's certificate was not
> found in RevokedDb, and was found in AllowedDb.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + Content = &Status; //The trick method to give Content a value.
> + ContentSize = 0;
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, &ContentSize);
> +
> + if (Status == EFI_BUFFER_TOO_SMALL)
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> + else
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid002 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_BUFFER_TOO_SMALL when the size of
> buffer indicated by ContentSize is too small to hold the content.
> ContentSize updated to required size.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> + Content = SctAllocateZeroPool(ContentSize);
> + Status = Pkcs7Verify->VerifyBuffer (Pkcs7Verify, P7Detached,
> sizeof(P7Detached), TestBin, sizeof(TestBin), AllowedDb, RevokedDb,
> TimestampDb, Content, &ContentSize);
> +
> + AssertionType = EFI_TEST_ASSERTION_FAILED;
> +
> + if ((Status == EFI_SUCCESS) && (ContentSize == sizeof(TestBin)) &&
> (!SctCompareMem(TestBin, Content, ContentSize)))
> + AssertionType = EFI_TEST_ASSERTION_PASSED;
> +
> + SctFreePool (Content);
> +
> + StandardLib->RecordAssertion (
> + StandardLib,
> + AssertionType,
> + gPkcs7BBTestFunctionAssertionGuid003 ,
> + L"PKCS7_VERIFY_PROTOCOL.VerifyBuffer -
> VerifyBuffer() should returns EFI_SUCCESS when the size of buffer
> indicated by ContentSize is big enough to hold the content, and
> retrive the correct content.",
> + L"%a:%d: Status - %r",
> + __FILE__,
> + (UINTN)__LINE__,
> + Status
> + );
> +
> +
> + //
> + // Clean the Data in all Dbs
> + //
> + AllowedDb[0] = NULL;
> + RevokedDb[0] = NULL;
> + TimestampDb[0] = NULL;
> +
> + return EFI_SUCCESS;
> +}
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.c b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.c
> index 10adb43..46f17f6 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.c
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.c
> @@ -1,232 +1,208 @@
> -/** @file
> -
> - Copyright 2016 - 2017 Unified EFI, Inc.<BR>
> - Copyright (c) 2016 - 2017, Intel Corporation. All rights
> reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> -Module Name:
> -
> - Pkcs7BBTestMain.c
> -
> -Abstract:
> -
> - Test Driver of Pkcs7 Verify Protocol
> -
> ---*/
> -
> -#include "SctLib.h"
> -#include "Pkcs7BBTestMain.h"
> -
> -
> -#define EFI_PKCS7_VERIFY_TEST_GUID \
> - { 0x47889fb2, 0xd671, 0x4fab, {0xa0, 0xca, 0xdf, 0xe, 0x44, 0xdf,
> 0x70, 0xd6 }}
> -
> -//
> -// Global variables
> -//
> -EFI_HANDLE mImageHandle;
> -
> -EFI_SIGNATURE_LIST *DbEntry1 = NULL;
> -EFI_SIGNATURE_LIST *DbEntry2 = NULL;
> -EFI_SIGNATURE_LIST *DbEntry3 = NULL;
> -EFI_SIGNATURE_LIST *DbEntry4 = NULL;
> -EFI_SIGNATURE_LIST *DbEntry5 = NULL;
> -
> -EFI_SIGNATURE_LIST *AllowedDb[3] = { NULL, NULL, NULL };
> -EFI_SIGNATURE_LIST *RevokedDb[3] = { NULL, NULL, NULL };
> -EFI_SIGNATURE_LIST *TimestampDb[3] = { NULL, NULL, NULL };
> -
> -EFI_BB_TEST_PROTOCOL *gBBTestProtocolInterface;
> -
> -EFI_BB_TEST_PROTOCOL_FIELD gBBTestProtocolField = {
> - EFI_PKCS7_VERIFY_PROTOCOL_TEST_REVISION,
> - EFI_PKCS7_VERIFY_TEST_GUID,
> - L"Pkcs7 Verify Protocol Test",
> - L"UEFI Pkcs7 Verify Protocol Black-Box Test"
> -};
> -
> -EFI_GUID gSupportProtocolGuid[] = {
> - EFI_STANDARD_TEST_LIBRARY_GUID,
> - EFI_NULL_GUID
> -};
> -
> -EFI_BB_TEST_ENTRY_FIELD gBBTestEntryField[] = {
> - {
> - EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0101,
> - L"VerifyBufferFunction",
> - L"Function auto test for Pkcs7 Verify Protocol VerifyBuffer().",
> - EFI_TEST_LEVEL_MINIMAL,
> - gSupportProtocolGuid,
> - EFI_TEST_CASE_AUTO,
> - BBTestVerifyBufferFunctionTest
> - },
> -#if 0
> - {
> - EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0102,
> - L"VerifySignatureFunction",
> - L"Function auto test for Pkcs7 Verify Protocol
> VerifySignature().",
> - EFI_TEST_LEVEL_MINIMAL,
> - gSupportProtocolGuid,
> - EFI_TEST_CASE_AUTO,
> - BBTestVerifySignatureFunctionTest
> - },
> -#endif
> - {
> - EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0201,
> - L"VerifyBufferConformance",
> - L"Conformance auto test for Pkcs7 Verify Protocol
> VerifyBuffer().",
> - EFI_TEST_LEVEL_MINIMAL,
> - gSupportProtocolGuid,
> - EFI_TEST_CASE_AUTO,
> - BBTestVerifyBufferConformanceTest
> - },
> -#if 0
> - {
> - EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0202,
> - L"VerifySignatureConformance",
> - L"Conformance auto test for Pkcs7 Verify Protocol
> VerifySignature().",
> - EFI_TEST_LEVEL_MINIMAL,
> - gSupportProtocolGuid,
> - EFI_TEST_CASE_AUTO,
> - BBTestVerifySignatureConformanceTest
> - },
> -#endif
> - 0
> -};
> -
> -
> -EFI_STATUS
> -EFIAPI
> -InitializePkcs7VerifyBBTest (
> - IN EFI_HANDLE ImageHandle,
> - IN EFI_SYSTEM_TABLE *SystemTable
> - )
> -{
> - EFI_STATUS Status;
> - EFI_TIME *RevokedTime;
> -
> - EfiInitializeTestLib (ImageHandle, SystemTable);
> -
> - //
> - // initialize test utility lib
> - //
> -
> - SctInitializeLib (ImageHandle, SystemTable);
> -
> - mImageHandle = ImageHandle;
> -
> - Status = EfiInitAndInstallBBTestInterface (
> - &ImageHandle,
> - &gBBTestProtocolField,
> - gBBTestEntryField,
> - UnloadPkcs7VerifyBBTest,
> - &gBBTestProtocolInterface
> - );
> -
> - //
> - // Initialize Signature List Entry for testing.
> - //
> - DbEntry1 = NULL;
> - DbEntry2 = NULL;
> - DbEntry3 = NULL;
> - DbEntry4 = NULL;
> - DbEntry5 = NULL;
> - RevokedTime = NULL;
> -
> -
> - // Signature List of TestRoot Certificate
> - //
> - DbEntry1 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert));
> - DbEntry1->SignatureType = gBlackBoxEfiCertX509Guid;
> - DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> - DbEntry1->SignatureHeaderSize = 0;
> - DbEntry1->SignatureSize = 16 + sizeof (TestRootCert);
> - SctCopyMem ((UINT8 *)DbEntry1 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestRootCert, sizeof (TestRootCert));
> -
> - //
> - // Signature List of TestSub Certificate
> - //
> - DbEntry2 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestSubCert));
> - DbEntry2->SignatureType = gBlackBoxEfiCertX509Guid;
> - DbEntry2->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestSubCert);
> - DbEntry2->SignatureHeaderSize = 0;
> - DbEntry2->SignatureSize = 16 + sizeof (TestSubCert);
> - SctCopyMem ((UINT8 *)DbEntry2 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestSubCert, sizeof (TestSubCert));
> -
> - //
> - // Signature List of TSRoot Certificate
> - //
> - DbEntry3 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert));
> - DbEntry3->SignatureType = gBlackBoxEfiCertX509Guid;
> - DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> - DbEntry3->SignatureHeaderSize = 0;
> - DbEntry3->SignatureSize = 16 + sizeof (TSRootCert);
> - SctCopyMem ((UINT8 *)DbEntry3 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TSRootCert, sizeof (TSRootCert));
> -
> - //
> - // Signature List of Binary Data Hash for Revocation Checking
> - //
> - DbEntry4 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> 32);
> - DbEntry4->SignatureType = gBlackBoxEfiCertSha256Guid;
> - DbEntry4->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> 32;
> - DbEntry4->SignatureHeaderSize = 0;
> - DbEntry4->SignatureSize = 16 + 32;
> - SctCopyMem ((UINT8 *)DbEntry4 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestBinHash, 32);
> -
> - //
> - // Signature List of Certificate Hash for Timestamp Signature
> Checking
> - //
> - DbEntry5 = SctAllocateZeroPool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> 48);
> - DbEntry5->SignatureType = gBlackBoxEfiCertX509Sha256Guid;
> - DbEntry5->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> 48;
> - DbEntry5->SignatureHeaderSize = 0;
> - DbEntry5->SignatureSize = 16 + 48;
> - SctCopyMem ((UINT8 *)DbEntry5 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestSubHash, 32);
> - RevokedTime = (EFI_TIME *) ((UINT8 *)DbEntry5 + sizeof
> (EFI_SIGNATURE_LIST) + 16 + 32);
> - RevokedTime->Year = 2015;
> - RevokedTime->Month = 8;
> - RevokedTime->Day = 20;
> -
> - return Status;
> -}
> -
> -
> -EFI_STATUS
> -EFIAPI
> -UnloadPkcs7VerifyBBTest (
> - IN EFI_HANDLE ImageHandle
> - )
> -{
> - if (DbEntry1 != NULL) {
> - SctFreePool (DbEntry1);
> - }
> - if (DbEntry2 != NULL) {
> - SctFreePool (DbEntry2);
> - }
> - if (DbEntry3 != NULL) {
> - SctFreePool (DbEntry3);
> - }
> - if (DbEntry4 != NULL) {
> - SctFreePool (DbEntry4);
> - }
> - if (DbEntry5 != NULL) {
> - SctFreePool (DbEntry5);
> - }
> -
> - return EfiUninstallAndFreeBBTestInterface (
> - ImageHandle,
> - gBBTestProtocolInterface
> - );
> -}
> -
> -
> +/** @file
> +
> + Copyright 2016 - 2017 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> +Module Name:
> +
> + Pkcs7BBTestMain.c
> +
> +Abstract:
> +
> + Test Driver of Pkcs7 Verify Protocol
> +
> +--*/
> +
> +#include "SctLib.h"
> +#include "Pkcs7BBTestMain.h"
> +
> +
> +#define EFI_PKCS7_VERIFY_TEST_GUID \
> + { 0x47889fb2, 0xd671, 0x4fab, {0xa0, 0xca, 0xdf, 0xe, 0x44, 0xdf,
> 0x70, 0xd6 }}
> +
> +//
> +// Global variables
> +//
> +EFI_HANDLE mImageHandle;
> +
> +EFI_SIGNATURE_LIST *DbEntry1 = NULL;
> +EFI_SIGNATURE_LIST *DbEntry2 = NULL;
> +EFI_SIGNATURE_LIST *DbEntry3 = NULL;
> +EFI_SIGNATURE_LIST *DbEntry4 = NULL;
> +EFI_SIGNATURE_LIST *DbEntry5 = NULL;
> +
> +EFI_SIGNATURE_LIST *AllowedDb[3] = { NULL, NULL, NULL };
> +EFI_SIGNATURE_LIST *RevokedDb[3] = { NULL, NULL, NULL };
> +EFI_SIGNATURE_LIST *TimestampDb[3] = { NULL, NULL, NULL };
> +
> +EFI_BB_TEST_PROTOCOL *gBBTestProtocolInterface;
> +
> +EFI_BB_TEST_PROTOCOL_FIELD gBBTestProtocolField = {
> + EFI_PKCS7_VERIFY_PROTOCOL_TEST_REVISION,
> + EFI_PKCS7_VERIFY_TEST_GUID,
> + L"Pkcs7 Verify Protocol Test",
> + L"UEFI Pkcs7 Verify Protocol Black-Box Test"
> +};
> +
> +EFI_GUID gSupportProtocolGuid[] = {
> + EFI_STANDARD_TEST_LIBRARY_GUID,
> + EFI_NULL_GUID
> +};
> +
> +EFI_BB_TEST_ENTRY_FIELD gBBTestEntryField[] = {
> + {
> + EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0101,
> + L"VerifyBufferFunction",
> + L"Function auto test for Pkcs7 Verify Protocol VerifyBuffer().",
> + EFI_TEST_LEVEL_MINIMAL,
> + gSupportProtocolGuid,
> + EFI_TEST_CASE_AUTO,
> + BBTestVerifyBufferFunctionTest
> + },
> + {
> + EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0201,
> + L"VerifyBufferConformance",
> + L"Conformance auto test for Pkcs7 Verify Protocol
> VerifyBuffer().",
> + EFI_TEST_LEVEL_MINIMAL,
> + gSupportProtocolGuid,
> + EFI_TEST_CASE_AUTO,
> + BBTestVerifyBufferConformanceTest
> + },
> + 0
> +};
> +
> +
> +EFI_STATUS
> +EFIAPI
> +InitializePkcs7VerifyBBTest (
> + IN EFI_HANDLE ImageHandle,
> + IN EFI_SYSTEM_TABLE *SystemTable
> + )
> +{
> + EFI_STATUS Status;
> + EFI_TIME *RevokedTime;
> +
> + EfiInitializeTestLib (ImageHandle, SystemTable);
> +
> + //
> + // initialize test utility lib
> + //
> +
> + SctInitializeLib (ImageHandle, SystemTable);
> +
> + mImageHandle = ImageHandle;
> +
> + Status = EfiInitAndInstallBBTestInterface (
> + &ImageHandle,
> + &gBBTestProtocolField,
> + gBBTestEntryField,
> + UnloadPkcs7VerifyBBTest,
> + &gBBTestProtocolInterface
> + );
> +
> + //
> + // Initialize Signature List Entry for testing.
> + //
> + DbEntry1 = NULL;
> + DbEntry2 = NULL;
> + DbEntry3 = NULL;
> + DbEntry4 = NULL;
> + DbEntry5 = NULL;
> + RevokedTime = NULL;
> +
> +
> + // Signature List of TestRoot Certificate
> + //
> + DbEntry1 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert));
> + DbEntry1->SignatureType = gBlackBoxEfiCertX509Guid;
> + DbEntry1->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestRootCert);
> + DbEntry1->SignatureHeaderSize = 0;
> + DbEntry1->SignatureSize = 16 + sizeof (TestRootCert);
> + SctCopyMem ((UINT8 *)DbEntry1 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestRootCert, sizeof (TestRootCert));
> +
> + //
> + // Signature List of TestSub Certificate
> + //
> + DbEntry2 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestSubCert));
> + DbEntry2->SignatureType = gBlackBoxEfiCertX509Guid;
> + DbEntry2->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TestSubCert);
> + DbEntry2->SignatureHeaderSize = 0;
> + DbEntry2->SignatureSize = 16 + sizeof (TestSubCert);
> + SctCopyMem ((UINT8 *)DbEntry2 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestSubCert, sizeof (TestSubCert));
> +
> + //
> + // Signature List of TSRoot Certificate
> + //
> + DbEntry3 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert));
> + DbEntry3->SignatureType = gBlackBoxEfiCertX509Guid;
> + DbEntry3->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> sizeof (TSRootCert);
> + DbEntry3->SignatureHeaderSize = 0;
> + DbEntry3->SignatureSize = 16 + sizeof (TSRootCert);
> + SctCopyMem ((UINT8 *)DbEntry3 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TSRootCert, sizeof (TSRootCert));
> +
> + //
> + // Signature List of Binary Data Hash for Revocation Checking
> + //
> + DbEntry4 = SctAllocatePool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> 32);
> + DbEntry4->SignatureType = gBlackBoxEfiCertSha256Guid;
> + DbEntry4->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> 32;
> + DbEntry4->SignatureHeaderSize = 0;
> + DbEntry4->SignatureSize = 16 + 32;
> + SctCopyMem ((UINT8 *)DbEntry4 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestBinHash, 32);
> +
> + //
> + // Signature List of Certificate Hash for Timestamp Signature
> Checking
> + //
> + DbEntry5 = SctAllocateZeroPool (sizeof (EFI_SIGNATURE_LIST) + 16 +
> 48);
> + DbEntry5->SignatureType = gBlackBoxEfiCertX509Sha256Guid;
> + DbEntry5->SignatureListSize = sizeof (EFI_SIGNATURE_LIST) + 16 +
> 48;
> + DbEntry5->SignatureHeaderSize = 0;
> + DbEntry5->SignatureSize = 16 + 48;
> + SctCopyMem ((UINT8 *)DbEntry5 + sizeof (EFI_SIGNATURE_LIST) + 16,
> TestSubHash, 32);
> + RevokedTime = (EFI_TIME *) ((UINT8 *)DbEntry5 + sizeof
> (EFI_SIGNATURE_LIST) + 16 + 32);
> + RevokedTime->Year = 2015;
> + RevokedTime->Month = 8;
> + RevokedTime->Day = 20;
> +
> + return Status;
> +}
> +
> +
> +EFI_STATUS
> +EFIAPI
> +UnloadPkcs7VerifyBBTest (
> + IN EFI_HANDLE ImageHandle
> + )
> +{
> + if (DbEntry1 != NULL) {
> + SctFreePool (DbEntry1);
> + }
> + if (DbEntry2 != NULL) {
> + SctFreePool (DbEntry2);
> + }
> + if (DbEntry3 != NULL) {
> + SctFreePool (DbEntry3);
> + }
> + if (DbEntry4 != NULL) {
> + SctFreePool (DbEntry4);
> + }
> + if (DbEntry5 != NULL) {
> + SctFreePool (DbEntry5);
> + }
> +
> + return EfiUninstallAndFreeBBTestInterface (
> + ImageHandle,
> + gBBTestProtocolInterface
> + );
> +}
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.h b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.h
> index 5a7667d..579b3cc 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.h
> +++ b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7B
> BTestMain.h
> @@ -1,125 +1,104 @@
> -/** @file
> -
> - Copyright 2016 - 2017 Unified EFI, Inc.<BR>
> - Copyright (c) 2016 - 2017, Intel Corporation. All rights
> reserved.<BR>
> -
> - 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.
> -
> -**/
> -/*++
> -
> -Module Name:
> -
> - Pkcs7BBTestMain.h
> -
> -Abstract:
> -
> - Test Driver of Pkcs7 Verify Protocol header file
> -
> ---*/
> -
> -#ifndef _PKCS7_BB_TEST_MAIN
> -#define _PKCS7_BB_TEST_MAIN
> -
> -#include "Efi.h"
> -#include <Library/EfiTestLib.h>
> -#include <SctLib.h>
> -#include <UEFI/Protocol/Pkcs7Verify.h>
> -#include "Guid.h"
> -
> -
> -#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_REVISION 0x00010000
> -
> -//
> -// Entry GUIDs for Func Test
> -//
> -#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0101 \
> -{ 0x5c6a8139, 0xad48, 0x4d52, {0x86, 0x37, 0x6, 0x9d, 0xf6, 0xad,
> 0x81, 0x5e }}
> -
> -#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0102 \
> -{ 0x413c4823, 0x263a, 0x417d, {0xa3, 0xd7, 0x14, 0x79, 0xf9, 0x2b,
> 0xf1, 0xb4 }}
> -
> -
> -//
> -// Entry GUIDs for Conf Test
> -//
> -#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0201 \
> -{ 0x562af518, 0xd04e, 0x435e, {0xa8, 0x9f, 0x79, 0xbb, 0x6f, 0x48,
> 0x16, 0x9a }}
> -
> -#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0202 \
> -{ 0xaf5e33d1, 0x3e08, 0x451a, {0xb1, 0x92, 0xe7, 0xb9, 0x91, 0x67,
> 0x83, 0xae }}
> -
> -
> -
> -
> -extern UINT8 TestBin[64];
> -extern UINT8 TestBinHash[32];
> -extern UINT8 TestSubCert[755];
> -extern UINT8 TestRootCert[756];
> -extern UINT8 P7Embedded[3330];
> -extern UINT8 P7Detached[1138];
> -extern UINT8 TSRootCert[1176];
> -extern UINT8 TBSCert[479];
> -extern UINT8 TestSubHash[32];
> -
> -//
> -//
> -//
> -EFI_STATUS
> -EFIAPI
> -InitializePkcs7VerifyBBTest (
> - IN EFI_HANDLE ImageHandle,
> - IN EFI_SYSTEM_TABLE *SystemTable
> - );
> -
> -EFI_STATUS
> -EFIAPI
> -UnloadPkcs7VerifyBBTest (
> - IN EFI_HANDLE ImageHandle
> - );
> -
> -//
> -//Test Cases
> -//
> -EFI_STATUS
> -BBTestVerifyBufferConformanceTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - );
> -
> -EFI_STATUS
> -BBTestHashConformanceTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - );
> -
> -
> -
> -EFI_STATUS
> -BBTestVerifyBufferFunctionTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - );
> -
> -EFI_STATUS
> -BBTestVerifySignatureFunctionTest (
> - IN EFI_BB_TEST_PROTOCOL *This,
> - IN VOID *ClientInterface,
> - IN EFI_TEST_LEVEL TestLevel,
> - IN EFI_HANDLE SupportHandle
> - );
> -
> -#endif
> -
> +/** @file
> +
> + Copyright 2016 - 2017 Unified EFI, Inc.<BR>
> + Copyright (c) 2016 - 2018, Intel Corporation. All rights
> reserved.<BR>
> +
> + 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.
> +
> +**/
> +/*++
> +
> +Module Name:
> +
> + Pkcs7BBTestMain.h
> +
> +Abstract:
> +
> + Test Driver of Pkcs7 Verify Protocol header file
> +
> +--*/
> +
> +#ifndef _PKCS7_BB_TEST_MAIN
> +#define _PKCS7_BB_TEST_MAIN
> +
> +#include "Efi.h"
> +#include <Library/EfiTestLib.h>
> +#include <SctLib.h>
> +#include <UEFI/Protocol/Pkcs7Verify.h>
> +#include "Guid.h"
> +
> +
> +#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_REVISION 0x00010000
> +
> +//
> +// Entry GUIDs for Func Test
> +//
> +#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0101 \
> +{ 0x5c6a8139, 0xad48, 0x4d52, {0x86, 0x37, 0x6, 0x9d, 0xf6, 0xad,
> 0x81, 0x5e }}
> +
> +#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0102 \
> +{ 0x413c4823, 0x263a, 0x417d, {0xa3, 0xd7, 0x14, 0x79, 0xf9, 0x2b,
> 0xf1, 0xb4 }}
> +
> +
> +//
> +// Entry GUIDs for Conf Test
> +//
> +#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0201 \
> +{ 0x562af518, 0xd04e, 0x435e, {0xa8, 0x9f, 0x79, 0xbb, 0x6f, 0x48,
> 0x16, 0x9a }}
> +
> +#define EFI_PKCS7_VERIFY_PROTOCOL_TEST_ENTRY_GUID0202 \
> +{ 0xaf5e33d1, 0x3e08, 0x451a, {0xb1, 0x92, 0xe7, 0xb9, 0x91, 0x67,
> 0x83, 0xae }}
> +
> +
> +extern UINT8 TestBin[64];
> +extern UINT8 TestBinHash[32];
> +extern UINT8 TestSubCert[755];
> +extern UINT8 TestRootCert[756];
> +extern UINT8 P7Embedded[3330];
> +extern UINT8 P7Detached[1138];
> +extern UINT8 TSRootCert[1176];
> +extern UINT8 TBSCert[479];
> +extern UINT8 TestSubHash[32];
> +
> +//
> +//
> +//
> +EFI_STATUS
> +EFIAPI
> +InitializePkcs7VerifyBBTest (
> + IN EFI_HANDLE ImageHandle,
> + IN EFI_SYSTEM_TABLE *SystemTable
> + );
> +
> +EFI_STATUS
> +EFIAPI
> +UnloadPkcs7VerifyBBTest (
> + IN EFI_HANDLE ImageHandle
> + );
> +
> +//
> +//Test Cases
> +//
> +EFI_STATUS
> +BBTestVerifyBufferConformanceTest (
> + IN EFI_BB_TEST_PROTOCOL *This,
> + IN VOID *ClientInterface,
> + IN EFI_TEST_LEVEL TestLevel,
> + IN EFI_HANDLE SupportHandle
> + );
> +
> +EFI_STATUS
> +BBTestVerifyBufferFunctionTest (
> + IN EFI_BB_TEST_PROTOCOL *This,
> + IN VOID *ClientInterface,
> + IN EFI_TEST_LEVEL TestLevel,
> + IN EFI_HANDLE SupportHandle
> + );
> +
> +#endif
prev parent reply other threads:[~2018-12-10 19:54 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-05 5:50 [edk2-test][v3 Patch 1/3] uefi-sct/SctPkg:Format code style in PKCS7Verify Eric Jin
2018-12-10 19:54 ` Supreeth Venkatesh [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5b7b20d177054c159ac13795b9ac3c9caaa4be6f.camel@arm.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox