xref: /aosp_15_r20/external/ms-tpm-20-ref/TPMCmd/tpm/include/EccTestData.h (revision 5c591343844d1f9da7da26467c4bf7efc8a7a413)
1*5c591343SA. Cody Schuffelen /* Microsoft Reference Implementation for TPM 2.0
2*5c591343SA. Cody Schuffelen  *
3*5c591343SA. Cody Schuffelen  *  The copyright in this software is being made available under the BSD License,
4*5c591343SA. Cody Schuffelen  *  included below. This software may be subject to other third party and
5*5c591343SA. Cody Schuffelen  *  contributor rights, including patent rights, and no such rights are granted
6*5c591343SA. Cody Schuffelen  *  under this license.
7*5c591343SA. Cody Schuffelen  *
8*5c591343SA. Cody Schuffelen  *  Copyright (c) Microsoft Corporation
9*5c591343SA. Cody Schuffelen  *
10*5c591343SA. Cody Schuffelen  *  All rights reserved.
11*5c591343SA. Cody Schuffelen  *
12*5c591343SA. Cody Schuffelen  *  BSD License
13*5c591343SA. Cody Schuffelen  *
14*5c591343SA. Cody Schuffelen  *  Redistribution and use in source and binary forms, with or without modification,
15*5c591343SA. Cody Schuffelen  *  are permitted provided that the following conditions are met:
16*5c591343SA. Cody Schuffelen  *
17*5c591343SA. Cody Schuffelen  *  Redistributions of source code must retain the above copyright notice, this list
18*5c591343SA. Cody Schuffelen  *  of conditions and the following disclaimer.
19*5c591343SA. Cody Schuffelen  *
20*5c591343SA. Cody Schuffelen  *  Redistributions in binary form must reproduce the above copyright notice, this
21*5c591343SA. Cody Schuffelen  *  list of conditions and the following disclaimer in the documentation and/or
22*5c591343SA. Cody Schuffelen  *  other materials provided with the distribution.
23*5c591343SA. Cody Schuffelen  *
24*5c591343SA. Cody Schuffelen  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ""AS IS""
25*5c591343SA. Cody Schuffelen  *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26*5c591343SA. Cody Schuffelen  *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
27*5c591343SA. Cody Schuffelen  *  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
28*5c591343SA. Cody Schuffelen  *  ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
29*5c591343SA. Cody Schuffelen  *  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30*5c591343SA. Cody Schuffelen  *  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
31*5c591343SA. Cody Schuffelen  *  ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32*5c591343SA. Cody Schuffelen  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33*5c591343SA. Cody Schuffelen  *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34*5c591343SA. Cody Schuffelen  */
35*5c591343SA. Cody Schuffelen // This file contains the parameter data for ECC testing.
36*5c591343SA. Cody Schuffelen 
37*5c591343SA. Cody Schuffelen #ifdef  SELF_TEST_DATA
38*5c591343SA. Cody Schuffelen 
39*5c591343SA. Cody Schuffelen TPM2B_TYPE(EC_TEST, 32);
40*5c591343SA. Cody Schuffelen const  TPM_ECC_CURVE        c_testCurve = 00003;
41*5c591343SA. Cody Schuffelen 
42*5c591343SA. Cody Schuffelen // The "static" key
43*5c591343SA. Cody Schuffelen 
44*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_ds = {{32, {
45*5c591343SA. Cody Schuffelen  0xdf,0x8d,0xa4,0xa3,0x88,0xf6,0x76,0x96,0x89,0xfc,0x2f,0x2d,0xa1,0xb4,0x39,0x7a,
46*5c591343SA. Cody Schuffelen  0x78,0xc4,0x7f,0x71,0x8c,0xa6,0x91,0x85,0xc0,0xbf,0xf3,0x54,0x20,0x91,0x2f,0x73}}};
47*5c591343SA. Cody Schuffelen 
48*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_QsX = {{32, {
49*5c591343SA. Cody Schuffelen  0x17,0xad,0x2f,0xcb,0x18,0xd4,0xdb,0x3f,0x2c,0x53,0x13,0x82,0x42,0x97,0xff,0x8d,
50*5c591343SA. Cody Schuffelen  0x99,0x50,0x16,0x02,0x35,0xa7,0x06,0xae,0x1f,0xda,0xe2,0x9c,0x12,0x77,0xc0,0xf9}}};
51*5c591343SA. Cody Schuffelen 
52*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_QsY = {{32, {
53*5c591343SA. Cody Schuffelen  0xa6,0xca,0xf2,0x18,0x45,0x96,0x6e,0x58,0xe6,0x72,0x34,0x12,0x89,0xcd,0xaa,0xad,
54*5c591343SA. Cody Schuffelen  0xcb,0x68,0xb2,0x51,0xdc,0x5e,0xd1,0x6d,0x38,0x20,0x35,0x57,0xb2,0xfd,0xc7,0x52}}};
55*5c591343SA. Cody Schuffelen 
56*5c591343SA. Cody Schuffelen // The "ephemeral" key
57*5c591343SA. Cody Schuffelen 
58*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_de = {{32, {
59*5c591343SA. Cody Schuffelen  0xb6,0xb5,0x33,0x5c,0xd1,0xee,0x52,0x07,0x99,0xea,0x2e,0x8f,0x8b,0x19,0x18,0x07,
60*5c591343SA. Cody Schuffelen  0xc1,0xf8,0xdf,0xdd,0xb8,0x77,0x00,0xc7,0xd6,0x53,0x21,0xed,0x02,0x53,0xee,0xac}}};
61*5c591343SA. Cody Schuffelen 
62*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_QeX = {{32, {
63*5c591343SA. Cody Schuffelen  0xa5,0x1e,0x80,0xd1,0x76,0x3e,0x8b,0x96,0xce,0xcc,0x21,0x82,0xc9,0xa2,0xa2,0xed,
64*5c591343SA. Cody Schuffelen  0x47,0x21,0x89,0x53,0x44,0xe9,0xc7,0x92,0xe7,0x31,0x48,0x38,0xe6,0xea,0x93,0x47}}};
65*5c591343SA. Cody Schuffelen 
66*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestKey_QeY = {{32, {
67*5c591343SA. Cody Schuffelen  0x30,0xe6,0x4f,0x97,0x03,0xa1,0xcb,0x3b,0x32,0x2a,0x70,0x39,0x94,0xeb,0x4e,0xea,
68*5c591343SA. Cody Schuffelen  0x55,0x88,0x81,0x3f,0xb5,0x00,0xb8,0x54,0x25,0xab,0xd4,0xda,0xfd,0x53,0x7a,0x18}}};
69*5c591343SA. Cody Schuffelen 
70*5c591343SA. Cody Schuffelen // ECDH test results
71*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestEcdh_X = {{32, {
72*5c591343SA. Cody Schuffelen  0x64,0x02,0x68,0x92,0x78,0xdb,0x33,0x52,0xed,0x3b,0xfa,0x3b,0x74,0xa3,0x3d,0x2c,
73*5c591343SA. Cody Schuffelen  0x2f,0x9c,0x59,0x03,0x07,0xf8,0x22,0x90,0xed,0xe3,0x45,0xf8,0x2a,0x0a,0xd8,0x1d}}};
74*5c591343SA. Cody Schuffelen 
75*5c591343SA. Cody Schuffelen const  TPM2B_EC_TEST    c_ecTestEcdh_Y = {{32, {
76*5c591343SA. Cody Schuffelen  0x58,0x94,0x05,0x82,0xbe,0x5f,0x33,0x02,0x25,0x90,0x3a,0x33,0x90,0x89,0xe3,0xe5,
77*5c591343SA. Cody Schuffelen  0x10,0x4a,0xbc,0x78,0xa5,0xc5,0x07,0x64,0xaf,0x91,0xbc,0xe6,0xff,0x85,0x11,0x40}}};
78*5c591343SA. Cody Schuffelen 
79*5c591343SA. Cody Schuffelen TPM2B_TYPE(TEST_VALUE, 64);
80*5c591343SA. Cody Schuffelen const TPM2B_TEST_VALUE        c_ecTestValue = {{64, {
81*5c591343SA. Cody Schuffelen  0x78,0xd5,0xd4,0x56,0x43,0x61,0xdb,0x97,0xa4,0x32,0xc4,0x0b,0x06,0xa9,0xa8,0xa0,
82*5c591343SA. Cody Schuffelen  0xf4,0x45,0x7f,0x13,0xd8,0x13,0x81,0x0b,0xe5,0x76,0xbe,0xaa,0xb6,0x3f,0x8d,0x4d,
83*5c591343SA. Cody Schuffelen  0x23,0x65,0xcc,0xa7,0xc9,0x19,0x10,0xce,0x69,0xcb,0x0c,0xc7,0x11,0x8d,0xc3,0xff,
84*5c591343SA. Cody Schuffelen  0x62,0x69,0xa2,0xbe,0x46,0x90,0xe7,0x7d,0x81,0x77,0x94,0x65,0x1c,0x3e,0xc1,0x3e}}};
85*5c591343SA. Cody Schuffelen 
86*5c591343SA. Cody Schuffelen #if ALG_SHA1_VALUE == DEFAULT_TEST_HASH
87*5c591343SA. Cody Schuffelen 
88*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_r = {{32, {
89*5c591343SA. Cody Schuffelen  0x57,0xf3,0x36,0xb7,0xec,0xc2,0xdd,0x76,0x0e,0xe2,0x81,0x21,0x49,0xc5,0x66,0x11,
90*5c591343SA. Cody Schuffelen  0x4b,0x8a,0x4f,0x17,0x62,0x82,0xcc,0x06,0xf6,0x64,0x78,0xef,0x6b,0x7c,0xf2,0x6c}}};
91*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_s = {{32, {
92*5c591343SA. Cody Schuffelen  0x1b,0xed,0x23,0x72,0x8f,0x17,0x5f,0x47,0x2e,0xa7,0x97,0x2c,0x51,0x57,0x20,0x70,
93*5c591343SA. Cody Schuffelen  0x6f,0x89,0x74,0x8a,0xa8,0xf4,0x26,0xf4,0x96,0xa1,0xb8,0x3e,0xe5,0x35,0xc5,0x94}}};
94*5c591343SA. Cody Schuffelen 
95*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_r = {{32,{
96*5c591343SA. Cody Schuffelen  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1b,0x08,0x9f,0xde,
97*5c591343SA. Cody Schuffelen  0xef,0x62,0xe3,0xf1,0x14,0xcb,0x54,0x28,0x13,0x76,0xfc,0x6d,0x69,0x22,0xb5,0x3e}}};
98*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_s = {{32,{
99*5c591343SA. Cody Schuffelen  0xd9,0xd3,0x20,0xfb,0x4d,0x16,0xf2,0xe6,0xe2,0x45,0x07,0x45,0x1c,0x92,0x92,0x92,
100*5c591343SA. Cody Schuffelen  0xa9,0x6b,0x48,0xf8,0xd1,0x98,0x29,0x4d,0xd3,0x8f,0x56,0xf2,0xbb,0x2e,0x22,0x3b}}};
101*5c591343SA. Cody Schuffelen 
102*5c591343SA. Cody Schuffelen #endif // SHA1
103*5c591343SA. Cody Schuffelen 
104*5c591343SA. Cody Schuffelen #if ALG_SHA256_VALUE == DEFAULT_TEST_HASH
105*5c591343SA. Cody Schuffelen 
106*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_r = {{32, {
107*5c591343SA. Cody Schuffelen  0x04,0x7d,0x54,0xeb,0x04,0x6f,0x56,0xec,0xa2,0x6c,0x38,0x8c,0xeb,0x43,0x0b,0x71,
108*5c591343SA. Cody Schuffelen  0xf8,0xf2,0xf4,0xa5,0xe0,0x1d,0x3c,0xa2,0x39,0x31,0xe4,0xe7,0x36,0x3b,0xb5,0x5f}}};
109*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_s = {{32, {
110*5c591343SA. Cody Schuffelen  0x8f,0xd0,0x12,0xd9,0x24,0x75,0xf6,0xc4,0x3b,0xb5,0x46,0x75,0x3a,0x41,0x8d,0x80,
111*5c591343SA. Cody Schuffelen  0x23,0x99,0x38,0xd7,0xe2,0x40,0xca,0x9a,0x19,0x2a,0xfc,0x54,0x75,0xd3,0x4a,0x6e}}};
112*5c591343SA. Cody Schuffelen 
113*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_r = {{32, {
114*5c591343SA. Cody Schuffelen  0xf7,0xb9,0x15,0x4c,0x34,0xf6,0x41,0x19,0xa3,0xd2,0xf1,0xbd,0xf4,0x13,0x6a,0x4f,
115*5c591343SA. Cody Schuffelen  0x63,0xb8,0x4d,0xb5,0xc8,0xcd,0xde,0x85,0x95,0xa5,0x39,0x0a,0x14,0x49,0x3d,0x2f}}};
116*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_s = {{32,{
117*5c591343SA. Cody Schuffelen  0xfe,0xbe,0x17,0xaa,0x31,0x22,0x9f,0xd0,0xd2,0xf5,0x25,0x04,0x92,0xb0,0xaa,0x4e,
118*5c591343SA. Cody Schuffelen  0xcc,0x1c,0xb6,0x79,0xd6,0x42,0xb3,0x4e,0x3f,0xbb,0xfe,0x5f,0xd0,0xd0,0x8b,0xc3}}};
119*5c591343SA. Cody Schuffelen 
120*5c591343SA. Cody Schuffelen #endif // SHA256
121*5c591343SA. Cody Schuffelen 
122*5c591343SA. Cody Schuffelen #if ALG_SHA384_VALUE == DEFAULT_TEST_HASH
123*5c591343SA. Cody Schuffelen 
124*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_r = {{32, {
125*5c591343SA. Cody Schuffelen  0xf5,0x74,0x6d,0xd6,0xc6,0x56,0x86,0xbb,0xba,0x1c,0xba,0x75,0x65,0xee,0x64,0x31,
126*5c591343SA. Cody Schuffelen  0xce,0x04,0xe3,0x9f,0x24,0x3f,0xbd,0xfe,0x04,0xcd,0xab,0x7e,0xfe,0xad,0xcb,0x82}}};
127*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_s = {{32, {
128*5c591343SA. Cody Schuffelen  0xc2,0x4f,0x32,0xa1,0x06,0xc0,0x85,0x4f,0xc6,0xd8,0x31,0x66,0x91,0x9f,0x79,0xcd,
129*5c591343SA. Cody Schuffelen  0x5b,0xe5,0x7b,0x94,0xa1,0x91,0x38,0xac,0xd4,0x20,0xa2,0x10,0xf0,0xd5,0x9d,0xbf}}};
130*5c591343SA. Cody Schuffelen 
131*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_r = {{32, {
132*5c591343SA. Cody Schuffelen  0x1e,0xb8,0xe1,0xbf,0xa1,0x9e,0x39,0x1e,0x58,0xa2,0xe6,0x59,0xd0,0x1a,0x6a,0x03,
133*5c591343SA. Cody Schuffelen  0x6a,0x1f,0x1c,0x4f,0x36,0x19,0xc1,0xec,0x30,0xa4,0x85,0x1b,0xe9,0x74,0x35,0x66}}};
134*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_s = {{32,{
135*5c591343SA. Cody Schuffelen  0xb9,0xe6,0xe3,0x7e,0xcb,0xb9,0xea,0xf1,0xcc,0xf4,0x48,0x44,0x4a,0xda,0xc8,0xd7,
136*5c591343SA. Cody Schuffelen  0x87,0xb4,0xba,0x40,0xfe,0x5b,0x68,0x11,0x14,0xcf,0xa0,0x0e,0x85,0x46,0x99,0x01}}};
137*5c591343SA. Cody Schuffelen 
138*5c591343SA. Cody Schuffelen #endif // SHA384
139*5c591343SA. Cody Schuffelen 
140*5c591343SA. Cody Schuffelen #if ALG_SHA512_VALUE == DEFAULT_TEST_HASH
141*5c591343SA. Cody Schuffelen 
142*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_r = {{32, {
143*5c591343SA. Cody Schuffelen  0xc9,0x71,0xa6,0xb4,0xaf,0x46,0x26,0x8c,0x27,0x00,0x06,0x3b,0x00,0x0f,0xa3,0x17,
144*5c591343SA. Cody Schuffelen  0x72,0x48,0x40,0x49,0x4d,0x51,0x4f,0xa4,0xcb,0x7e,0x86,0xe9,0xe7,0xb4,0x79,0xb2}}};
145*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcDsa_s = {{32,{
146*5c591343SA. Cody Schuffelen  0x87,0xbc,0xc0,0xed,0x74,0x60,0x9e,0xfa,0x4e,0xe8,0x16,0xf3,0xf9,0x6b,0x26,0x07,
147*5c591343SA. Cody Schuffelen  0x3c,0x74,0x31,0x7e,0xf0,0x62,0x46,0xdc,0xd6,0x45,0x22,0x47,0x3e,0x0c,0xa0,0x02}}};
148*5c591343SA. Cody Schuffelen 
149*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_r = {{32,{
150*5c591343SA. Cody Schuffelen  0xcc,0x07,0xad,0x65,0x91,0xdd,0xa0,0x10,0x23,0xae,0x53,0xec,0xdf,0xf1,0x50,0x90,
151*5c591343SA. Cody Schuffelen  0x16,0x96,0xf4,0x45,0x09,0x73,0x9c,0x84,0xb5,0x5c,0x5f,0x08,0x51,0xcb,0x60,0x01}}};
152*5c591343SA. Cody Schuffelen const TPM2B_EC_TEST    c_TestEcSchnorr_s = {{32,{
153*5c591343SA. Cody Schuffelen  0x55,0x20,0x21,0x54,0xe2,0x49,0x07,0x47,0x71,0xf4,0x99,0x15,0x54,0xf3,0xab,0x14,
154*5c591343SA. Cody Schuffelen  0xdb,0x8e,0xda,0x79,0xb6,0x02,0x0e,0xe3,0x5e,0x6f,0x2c,0xb6,0x05,0xbd,0x14,0x10}}};
155*5c591343SA. Cody Schuffelen 
156*5c591343SA. Cody Schuffelen #endif // SHA512
157*5c591343SA. Cody Schuffelen 
158*5c591343SA. Cody Schuffelen #endif // SELF_TEST_DATA
159