public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-test][v3 Patch 1/3] uefi-sct/SctPkg:Format code style in PKCS7Verify
@ 2018-12-05  5:50 Eric Jin
  2018-12-10 19:54 ` Supreeth Venkatesh
  0 siblings, 1 reply; 2+ messages in thread
From: Eric Jin @ 2018-12-05  5:50 UTC (permalink / raw)
  To: edk2-devel

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 195576 bytes --]

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>
---
 .../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/Pkcs7BBTest.inf b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTest.inf
index e54a185..1b89bed 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTest.inf
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTest.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/Pkcs7BBTestConformance.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestConformance.c
index a5a90f0..1dc9921 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestConformance.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestConformance.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/Pkcs7BBTestData.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestData.c
index a164b54..0511e00 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestData.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestData.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/Pkcs7BBTestFunction.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestFunction.c
index c4f51c0..4266240 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestFunction.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestFunction.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 signer¡¯certificate 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 signer¡¯certificate 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/Pkcs7BBTestMain.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.c
index 10adb43..46f17f6 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.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/Pkcs7BBTestMain.h b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.h
index 5a7667d..579b3cc 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.h
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/PKCS7Verify/BlackBoxTest/Pkcs7BBTestMain.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
-- 
2.9.0.windows.1



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [edk2-test][v3 Patch 1/3] uefi-sct/SctPkg:Format code style in PKCS7Verify
  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
  0 siblings, 0 replies; 2+ messages in thread
From: Supreeth Venkatesh @ 2018-12-10 19:54 UTC (permalink / raw)
  To: Eric Jin, edk2-devel

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



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-12-10 19:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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 is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox